「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
探検
ふらっと C#,C♯,C#(初心者用) Part141
レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん
2018/12/15(土) 10:46:07.45ID:Wu4Fx0bU857デフォルトの名無しさん
2020/10/05(月) 17:35:16.52ID:Xbvrw4me デリケートだからな
858デフォルトの名無しさん
2020/10/05(月) 17:41:37.83ID:gVc00iwv class myDAT {
public int no;
public double[] data = new double[5];
}
public static void Main(string[] args) {
myDAT[] mydata = new myDAT[10]; //★
for (int i = 0; i < 10; i++){
mydata[i] = new myDAT();
}
クラスを配列にしたとき★の箇所の"myDAT[10]"を10固定じゃなく動的にしたいのですが
どうすればよいですか?
public int no;
public double[] data = new double[5];
}
public static void Main(string[] args) {
myDAT[] mydata = new myDAT[10]; //★
for (int i = 0; i < 10; i++){
mydata[i] = new myDAT();
}
クラスを配列にしたとき★の箇所の"myDAT[10]"を10固定じゃなく動的にしたいのですが
どうすればよいですか?
859デフォルトの名無しさん
2020/10/05(月) 17:56:17.90ID:KVy+kNYk 普通に変数入れたらええやん
860デフォルトの名無しさん
2020/10/05(月) 17:56:55.51ID:OgnTy5dE コレクションじゃあかんの?
861858
2020/10/05(月) 18:34:00.09ID:gVc00iwv 最初[10]と宣言した後、[20]とかには・・・・変更できますか?
っと追加で質問してもいいですか?
っと追加で質問してもいいですか?
862デフォルトの名無しさん
2020/10/05(月) 18:37:48.75ID:nd84XqHd863デフォルトの名無しさん
2020/10/05(月) 18:45:03.21ID:jLRpmu5w Resize() があるけど、これは新しいarrayを作って中身をコピって置き換えるので
期待しているようなものとはちがうかもしれない
https://docs.microsoft.com/ja-jp/dotnet/api/system.array.resize?view=netframework-4.8
arrayは要素数が変わらないのが前提というか、そういう伝統なので
要素数が変わるのが分かっているのならコレクション系のものを使いましょう
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/concepts/collections
期待しているようなものとはちがうかもしれない
https://docs.microsoft.com/ja-jp/dotnet/api/system.array.resize?view=netframework-4.8
arrayは要素数が変わらないのが前提というか、そういう伝統なので
要素数が変わるのが分かっているのならコレクション系のものを使いましょう
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/concepts/collections
864デフォルトの名無しさん
2020/10/05(月) 20:08:01.60ID:CqQ7ITSE >>856
スマヌ…足を突っ込んだばかりで良く分からずに始めたもので…別スレ案件でしたか…
スマヌ…足を突っ込んだばかりで良く分からずに始めたもので…別スレ案件でしたか…
865デフォルトの名無しさん
2020/10/05(月) 21:19:26.58ID:rQ89lJX/ >>858
static void Main(string[] args)
{
const int defaultCount = 10;
var count = defaultCount;
for (int i = 0; i < args.Length - 1; i++)
{
var arg = args[i];
if(arg == "-n" || arg == "/n")
if (int.TryParse(args[i + 1], out count)) break;
}
var chars = new char[count];
for (int i = 0; i < count; i++) chars[i] = (char)('A' + i);
Console.WriteLine(new string(chars));
Console.ReadKey();
}
static void Main(string[] args)
{
const int defaultCount = 10;
var count = defaultCount;
for (int i = 0; i < args.Length - 1; i++)
{
var arg = args[i];
if(arg == "-n" || arg == "/n")
if (int.TryParse(args[i + 1], out count)) break;
}
var chars = new char[count];
for (int i = 0; i < count; i++) chars[i] = (char)('A' + i);
Console.WriteLine(new string(chars));
Console.ReadKey();
}
866デフォルトの名無しさん
2020/10/05(月) 22:04:35.42ID:ToydrsKO 質問です
イベントは、購読する側が寿命が短い場合自分で登録解除しないと開放されず、リークするのは分かるのですが、
イベントを発生させる側が寿命が短い場合はそのインスタンスをフィールドで持っておかないと
購読されていても途中で開放されてしまうのでしょうか
その場合、例えばコンストラクタでイベントを発生させるオブジェクトを受け取って購読するだけのような処理(以下)
public class Subscriber {
public Subscriber(Publisher publisher) {
publisher.ValueChanged += Publisher_ValueChanged;
}
}
の場合、subscriberはpublisherを持っていないので、subscriberが生きている間にpublisherが開放されて購読も解除されるといったことは起こりますか?
これは設計が悪い?
イベントは、購読する側が寿命が短い場合自分で登録解除しないと開放されず、リークするのは分かるのですが、
イベントを発生させる側が寿命が短い場合はそのインスタンスをフィールドで持っておかないと
購読されていても途中で開放されてしまうのでしょうか
その場合、例えばコンストラクタでイベントを発生させるオブジェクトを受け取って購読するだけのような処理(以下)
public class Subscriber {
public Subscriber(Publisher publisher) {
publisher.ValueChanged += Publisher_ValueChanged;
}
}
の場合、subscriberはpublisherを持っていないので、subscriberが生きている間にpublisherが開放されて購読も解除されるといったことは起こりますか?
これは設計が悪い?
867デフォルトの名無しさん
2020/10/05(月) 22:23:53.32ID:rQ89lJX/ >>866
>subscriberはpublisherを持っていない
これが分かってるなら答えは自明でしょ
設計が悪いかどうかは何を実現したいか次第
でも普通は発行側の寿命を購読側に合わせたいことなんてあるのかなと思う。
>subscriberはpublisherを持っていない
これが分かってるなら答えは自明でしょ
設計が悪いかどうかは何を実現したいか次第
でも普通は発行側の寿命を購読側に合わせたいことなんてあるのかなと思う。
868デフォルトの名無しさん
2020/10/05(月) 22:36:15.65ID:ToydrsKO869デフォルトの名無しさん
2020/10/06(火) 22:21:36.32ID:0ZJ/y4Ey パラメータをPOSTしてウェブサイトのHTMLソースを取得しています。
POSTするデータが普通の配列形式の方法は以前から知っているのですが、JSON形式でPOSTするサイトに出くわしました。
いろいろなウェブサイトを見てPOST自体はエラーせずにできるようになったようなのですが、レスポンスもJSON形式のデータしか取得できずに困っています。
欲しいのはウェブサイトのHTMLソースです。
どうしたらいいでしょうか?
POSTするデータが普通の配列形式の方法は以前から知っているのですが、JSON形式でPOSTするサイトに出くわしました。
いろいろなウェブサイトを見てPOST自体はエラーせずにできるようになったようなのですが、レスポンスもJSON形式のデータしか取得できずに困っています。
欲しいのはウェブサイトのHTMLソースです。
どうしたらいいでしょうか?
870デフォルトの名無しさん
2020/10/06(火) 22:21:52.52ID:0ZJ/y4Ey var jsonParameter = new JavaScriptSerializer().Serialize(new
{
hoge1 = new
{
hoge2 = new
{
fuga1 = "0",
fuga2 = "1",
},
hoge3 = new
{
fuga3="3",
}
}
});
// リクエストの作成
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.Method = "POST";
req.ContentType = "application/json; charset=utf-8";
req.Accept = "application/json, text/plain, */*";
using (var streamWriter = new StreamWriter(req.GetRequestStream()))
{
streamWriter.Write(jsonParameter);
}
var httpResponse = (HttpWebResponse)req.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
string result = streamReader.ReadToEnd();
}
{
hoge1 = new
{
hoge2 = new
{
fuga1 = "0",
fuga2 = "1",
},
hoge3 = new
{
fuga3="3",
}
}
});
// リクエストの作成
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.Method = "POST";
req.ContentType = "application/json; charset=utf-8";
req.Accept = "application/json, text/plain, */*";
using (var streamWriter = new StreamWriter(req.GetRequestStream()))
{
streamWriter.Write(jsonParameter);
}
var httpResponse = (HttpWebResponse)req.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
string result = streamReader.ReadToEnd();
}
871デフォルトの名無しさん
2020/10/06(火) 22:26:11.86ID:UOuIyfzj にゅにゅにゅにゅにゅ〜
872デフォルトの名無しさん
2020/10/06(火) 22:26:56.84ID:3gNx1ZB7 過去ログ抜こうとしてるんかな
873デフォルトの名無しさん
2020/10/07(水) 04:05:43.46ID:qlNjOdYh curl, wget でも出来る。
Windows 10 なら、C:\Windows\System32\curl.exe
が入っている。
これは、PowerShell のcurl alias とは異なる
漏れは、VSCode の拡張機能、Rest Client を使ってる
Windows 10 なら、C:\Windows\System32\curl.exe
が入っている。
これは、PowerShell のcurl alias とは異なる
漏れは、VSCode の拡張機能、Rest Client を使ってる
874デフォルトの名無しさん
2020/10/07(水) 20:04:46.52ID:mkQTgHeP >>870
すいません解決しました。
すいません解決しました。
875デフォルトの名無しさん
2020/10/08(木) 18:41:10.72ID:zyhORnZD 5.0始めたけど new()の出番めっちゃ多いな
varよりnew()優先にするのがいいのかな
varよりnew()優先にするのがいいのかな
876デフォルトの名無しさん
2020/10/08(木) 20:54:36.31ID:toLcLUNb Windows 10だけサポートしたいんですけど
.Netはどのバージョンからサポートしたらいいのでしょうか?
.Netはどのバージョンからサポートしたらいいのでしょうか?
877デフォルトの名無しさん
2020/10/08(木) 20:56:55.59ID:Whd9Wcyu 5
878デフォルトの名無しさん
2020/10/08(木) 21:05:12.84ID:ihp2OLR0879デフォルトの名無しさん
2020/10/08(木) 21:22:37.99ID:+UAfPznY 二つの配列A,Bがあり、Bに入っていない要素がAにある場合の処理はどのようにすればいいでしょうか?
やりたい事は、テキストファイルから一行ずつBに読み込んで格納し、なんらかの結果の配列Aとの照らし合わせを行いたいのですが、なかなか上手くいかず…
やりたい事は、テキストファイルから一行ずつBに読み込んで格納し、なんらかの結果の配列Aとの照らし合わせを行いたいのですが、なかなか上手くいかず…
880デフォルトの名無しさん
2020/10/08(木) 21:27:38.87ID:Whd9Wcyu linq
881デフォルトの名無しさん
2020/10/08(木) 21:41:27.48ID:GTaO2d9W 差集合Except()が直感的かな
882デフォルトの名無しさん
2020/10/08(木) 22:34:11.70ID:+UAfPznY883デフォルトの名無しさん
2020/10/09(金) 11:00:27.55ID:n+WfHqnB C#で構築したORACLEを更新しているシステムがあるのですが、
入力時にタイムアウトするのを防ぐ、もしくは入力を促すような
仕組みを作るにはどうすればいいでしょうか。
入力時にタイムアウトするのを防ぐ、もしくは入力を促すような
仕組みを作るにはどうすればいいでしょうか。
884デフォルトの名無しさん
2020/10/09(金) 11:12:40.23ID:YM8vGnnj アバウトすぎやろw
885デフォルトの名無しさん
2020/10/09(金) 11:16:26.16ID:n+WfHqnB 一般的な対策はありますか?
ユーザーに処理を放置せず、すぐ完了させてくれとかいうしかないですか?
自分はプログラマーでもないので詳しくなてすみません。
ユーザーに処理を放置せず、すぐ完了させてくれとかいうしかないですか?
自分はプログラマーでもないので詳しくなてすみません。
886デフォルトの名無しさん
2020/10/09(金) 11:22:21.55ID:zClV+H3L 入力時にタイムアウト、ってなんでそうなるの?
入力を促されていることにユーザーが気がつかないのか、ユーザーがいい加減でほっとく人が多いのか。
前者なら、
・画面以外でユーザーに入力を促す仕組みを作る
- 決まった音を鳴らしてみる
- メール等で通知してみる
・ユーザーの入力が遅いのであれば、入力を保存してタイムアウト後に画面を開く?などした際にも前回の入力値を復元してあげて二度手間を減らしてあげる
後者なら、
・教育する
などがあるんじゃないかと思うんだけど、エスパーはたいてい外れるので、もうちょっと状況を整理してから聞いてみるのがいいんじゃないかと。
入力を促されていることにユーザーが気がつかないのか、ユーザーがいい加減でほっとく人が多いのか。
前者なら、
・画面以外でユーザーに入力を促す仕組みを作る
- 決まった音を鳴らしてみる
- メール等で通知してみる
・ユーザーの入力が遅いのであれば、入力を保存してタイムアウト後に画面を開く?などした際にも前回の入力値を復元してあげて二度手間を減らしてあげる
後者なら、
・教育する
などがあるんじゃないかと思うんだけど、エスパーはたいてい外れるので、もうちょっと状況を整理してから聞いてみるのがいいんじゃないかと。
887デフォルトの名無しさん
2020/10/09(金) 11:32:30.15ID:n+WfHqnB ありがとうございます。
>ユーザーの入力が遅いのであれば、入力を保存して
ローカル環境に入力途中のデータを保存するようにしてもらうという意味でしょうか
>ユーザーの入力が遅いのであれば、入力を保存して
ローカル環境に入力途中のデータを保存するようにしてもらうという意味でしょうか
888デフォルトの名無しさん
2020/10/09(金) 12:03:32.51ID:YM8vGnnj C#関係あんの?
889デフォルトの名無しさん
2020/10/09(金) 12:14:10.80ID:vMOSOHWg バックグラウンドで定期的に無意味なselectクエリを発行すればいいよ
890デフォルトの名無しさん
2020/10/09(金) 12:19:00.25ID:a2KfB7NN ヘルメット開発しろ
早く入力しないと高圧電流が流れる仕組みだ
早く入力しないと高圧電流が流れる仕組みだ
891デフォルトの名無しさん
2020/10/09(金) 13:26:43.53ID:IpDZ9RMp 設計・実装と運用が根本的にかみ合ってない予感
892デフォルトの名無しさん
2020/10/09(金) 13:53:03.37ID:V1E2IEC6 - 照明を落として赤いパトランプ点灯
- SF映画で自爆装置が作動した時みたいな警報音を鳴らす
- 当然プシューという音とともにスモークを噴出させることも忘れずに
- SF映画で自爆装置が作動した時みたいな警報音を鳴らす
- 当然プシューという音とともにスモークを噴出させることも忘れずに
893デフォルトの名無しさん
2020/10/09(金) 14:26:50.22ID:8xBy2vBw そもそも何がタイムアウトしてるんだ?
真面目な話はそれからだ
まあ、設計が悪いと思うけど
真面目な話はそれからだ
まあ、設計が悪いと思うけど
894デフォルトの名無しさん
2020/10/09(金) 14:42:02.91ID:6ktS8zpy コネクション開きっぱなしでユーザーにフォーム入力求めてると予想。
895デフォルトの名無しさん
2020/10/09(金) 16:22:27.55ID:n+WfHqnB >> 894
それっぽい場合はどのように処理をすればいいのでしょうか
それっぽい場合はどのように処理をすればいいのでしょうか
896デフォルトの名無しさん
2020/10/09(金) 16:32:01.61ID:nKkCxIzL897デフォルトの名無しさん
2020/10/09(金) 16:32:12.90ID:n+WfHqnB 1.My.settingというものに書き込んでおけば呼び出すことが出来る
2.テーブルからデータをSELECTして画面に表示したら、Oracleとの接続を切って
画面の更新ボタンを押す際にOracleと接続すれば、タイムアウトすることはない
1.2.のような理解で正しいでしょうか。
2.テーブルからデータをSELECTして画面に表示したら、Oracleとの接続を切って
画面の更新ボタンを押す際にOracleと接続すれば、タイムアウトすることはない
1.2.のような理解で正しいでしょうか。
898デフォルトの名無しさん
2020/10/09(金) 16:32:12.93ID:n+WfHqnB 1.My.settingというものに書き込んでおけば呼び出すことが出来る
2.テーブルからデータをSELECTして画面に表示したら、Oracleとの接続を切って
画面の更新ボタンを押す際にOracleと接続すれば、タイムアウトすることはない
1.2.のような理解で正しいでしょうか。
2.テーブルからデータをSELECTして画面に表示したら、Oracleとの接続を切って
画面の更新ボタンを押す際にOracleと接続すれば、タイムアウトすることはない
1.2.のような理解で正しいでしょうか。
899デフォルトの名無しさん
2020/10/09(金) 16:48:55.28ID:mOpqVRBo 何のタイムアウトか分からない
何でタイムアウトしてるのか分からない
この状態でどうすればいいか話しても無駄なので
まず上の2つを明らかにしないと
何でタイムアウトしてるのか分からない
この状態でどうすればいいか話しても無駄なので
まず上の2つを明らかにしないと
900デフォルトの名無しさん
2020/10/09(金) 17:15:05.54ID:8xBy2vBw901デフォルトの名無しさん
2020/10/09(金) 17:20:48.89ID:IpDZ9RMp そもそも、なんで「プログラマーじゃない」って言っている ID:n+WfHqnB が改善案を求めているのかが謎
902デフォルトの名無しさん
2020/10/09(金) 19:01:42.52ID:IN0CEnyU 職業的なプログラマーじゃないけどちょっとは齧ってるからやらされてるって感じじゃなのかね
903デフォルトの名無しさん
2020/10/09(金) 19:28:05.97ID:phKb1ah1 データベースついでに教えて欲しいんだけどさ
内蔵のSQLiteって、あれって本家のSQLiteみたいにWALを吐かせることってできないの?
内蔵のSQLiteって、あれって本家のSQLiteみたいにWALを吐かせることってできないの?
904デフォルトの名無しさん
2020/10/09(金) 20:24:45.78ID:6ktS8zpy 内蔵って何の?
905デフォルトの名無しさん
2020/10/09(金) 21:27:28.10ID:a2KfB7NN 「なんか舐められてるからここらで一発英語連発しとくか」
906デフォルトの名無しさん
2020/10/09(金) 23:27:36.61ID:760t1BpC データベースとの接続を、したり切ったりするようなものは、見たことない。
普通、ずっと接続してる
テストでは接続を切って、始めからやり直すけど
本番環境で接続処理をやり直していたら、遅くて話にならない。
ユーザー認証とか、接続の初期化処理から始めるわけだから
普通、ずっと接続してる
テストでは接続を切って、始めからやり直すけど
本番環境で接続処理をやり直していたら、遅くて話にならない。
ユーザー認証とか、接続の初期化処理から始めるわけだから
907デフォルトの名無しさん
2020/10/09(金) 23:58:26.95ID:mOpqVRBo 普通はコネクションプール使うから
908デフォルトの名無しさん
2020/10/10(土) 00:44:06.58ID:79v4aWeJ >>907
それをやってないアプリケーションの可能性が高いよね
それをやってないアプリケーションの可能性が高いよね
909デフォルトの名無しさん
2020/10/10(土) 01:45:08.02ID:0SjnNOm9 普通そこら辺アーケードゲームみたいに
カードをピッで暗所番号入力とか
銀行ATMとかもさ、入力遅かったら
カウントダウンで自動ログオフするんじゃないの?
カードをピッで暗所番号入力とか
銀行ATMとかもさ、入力遅かったら
カウントダウンで自動ログオフするんじゃないの?
910デフォルトの名無しさん
2020/10/10(土) 02:21:11.62ID:79v4aWeJ どんな普通か知らんけど、
MySQLにアクセスしてテーブルの中身を表示して変更するアプリを自作したときのことを、いろいろ思い出した。
データベースのユーザーidとパスワードがあるわけだけど、それはアプリのセッティングに保存できるけど
毎回アプリ起動時に入力する。
データベースにconnectして、ユーザー操作を待つ。selectやupdateが必要になったとき、そのsql文を実行する。
connectionがある間は何度でも繰り返すことができる。
アプリ終了時にはconnectionをcloseする。
何だけど、これだとconnectionが使われない時間が長くなると、接続が切れる。タイムアウトするというやつ。
なのでバックグラウンドでconnectionを維持する(もしタイムアウトしたら、次に必要な時に自動でopenするとか、タイムアウトしないように、ダミーで何かする)ライブラリ機能が大抵はある。
これをコネクションプールと言う。
件のアプリは、そのあたりに問題を抱えているのではないか。
最初からコネクションプールがうまく使えていないのか、データベースかライブラリのバージョンアップでタイムアウトの設定が変わったのか
MySQLにアクセスしてテーブルの中身を表示して変更するアプリを自作したときのことを、いろいろ思い出した。
データベースのユーザーidとパスワードがあるわけだけど、それはアプリのセッティングに保存できるけど
毎回アプリ起動時に入力する。
データベースにconnectして、ユーザー操作を待つ。selectやupdateが必要になったとき、そのsql文を実行する。
connectionがある間は何度でも繰り返すことができる。
アプリ終了時にはconnectionをcloseする。
何だけど、これだとconnectionが使われない時間が長くなると、接続が切れる。タイムアウトするというやつ。
なのでバックグラウンドでconnectionを維持する(もしタイムアウトしたら、次に必要な時に自動でopenするとか、タイムアウトしないように、ダミーで何かする)ライブラリ機能が大抵はある。
これをコネクションプールと言う。
件のアプリは、そのあたりに問題を抱えているのではないか。
最初からコネクションプールがうまく使えていないのか、データベースかライブラリのバージョンアップでタイムアウトの設定が変わったのか
911デフォルトの名無しさん
2020/10/10(土) 03:04:53.98ID:PieQlTcj コネクションプーリングはタイムアウト対策じゃねえよ
912デフォルトの名無しさん
2020/10/10(土) 03:08:30.31ID:PieQlTcj オープンしただけのアイドル状態のコネクションがタイムアウトするならプーリング関係ない
プールに戻さないでタイムアウトするんだからな
まず何がタイムアウトしてるのかはっきりさせんと話にならん
まあどうせトランザクション開始してからユーザ入力待ってるんだろうけど
プールに戻さないでタイムアウトするんだからな
まず何がタイムアウトしてるのかはっきりさせんと話にならん
まあどうせトランザクション開始してからユーザ入力待ってるんだろうけど
913デフォルトの名無しさん
2020/10/10(土) 03:34:35.36ID:BjcbKuib コネクションプールは、大量のアクセスに対して、事前に起動しておくもの
それで接続が速くなる
それで接続が速くなる
914デフォルトの名無しさん
2020/10/10(土) 09:37:17.23ID:zxwCdOcf 普通のWebアプリはリクエスト/レスポンスのたびに毎回コネクションopen/closeしてる
タイムアウトの件とは関係ないがコネクションプーリングは
DBサーバーを使う場合の基本なのでちゃんと押さえておいたほうがいいyo
タイムアウトの件とは関係ないがコネクションプーリングは
DBサーバーを使う場合の基本なのでちゃんと押さえておいたほうがいいyo
915デフォルトの名無しさん
2020/10/10(土) 10:02:07.30ID:OrgjdyW8 いや、マジでいつまでスレチ続けんの
916デフォルトの名無しさん
2020/10/10(土) 12:55:36.90ID:bjtm+bd1 話題もプールされているんだ
917デフォルトの名無しさん
2020/10/10(土) 16:50:19.84ID:i5KfYhU+918デフォルトの名無しさん
2020/10/11(日) 11:18:45.56ID:nehM9hsi try~catch~finallyで質問です。
finallyを使うケース教えて下さい。
finallyを使うケース教えて下さい。
919デフォルトの名無しさん
2020/10/11(日) 11:27:57.38ID:ErUdhCxH プログラム板のスレッドの中で記述されていて
catchブロックの中でreturn文などにより処理が
スレッドの呼び出し元へ戻ってしまう場合には
try文の次に記述されたレスは実行されません。
finallyブロックを使った場合はcatchブロックの中でreturn文などが実行された場合でも必ず実行されます。
(ただしSystem.exit(0)によってプログラムが終了した場合を除きます)。
catchブロックの中でreturn文などにより処理が
スレッドの呼び出し元へ戻ってしまう場合には
try文の次に記述されたレスは実行されません。
finallyブロックを使った場合はcatchブロックの中でreturn文などが実行された場合でも必ず実行されます。
(ただしSystem.exit(0)によってプログラムが終了した場合を除きます)。
920デフォルトの名無しさん
2020/10/11(日) 11:53:49.08ID:mzj9OHDg finallyを使った記憶がないな
IDisposableを正しく実装してusingするのがC#流
IDisposableを正しく実装してusingするのがC#流
921デフォルトの名無しさん
2020/10/11(日) 11:56:36.28ID:2hFwVXKf >>920
歪んだ初心者だな
歪んだ初心者だな
922デフォルトの名無しさん
2020/10/11(日) 16:21:37.29ID:SD6h9HSf async/awaitで排他制御やる時にSemaphoreを使うけど、開放する時にfinally使うのが一般的
923デフォルトの名無しさん
2020/10/12(月) 01:01:50.89ID:S+m0Jln7 必要だから実装されているのでは
924デフォルトの名無しさん
2020/10/12(月) 09:32:25.45ID:941JO02h925デフォルトの名無しさん
2020/10/12(月) 16:12:50.06ID:2Z4zotkW usingっていまいち分かってないんだけど、例外が起きたときにも破棄されるの?
926デフォルトの名無しさん
2020/10/12(月) 16:26:28.81ID:sR+xz/oc されるよ、むしろそのため
927デフォルトの名無しさん
2020/10/12(月) 18:48:18.31ID:8cHhoAHg using変数宣言とref structで無駄なヒープ確保をせずにDisposeを呼べるようになったのは良いね
ネイティブ周りで重宝する
ネイティブ周りで重宝する
928デフォルトの名無しさん
2020/10/13(火) 16:23:58.19ID:401SSeVR ASP.Net Coreで使用しているデータベースを、他の種類のデータベースに移行する手段があれば教えてください
具体的には、SQLServer Expressから月500円の激安マネージドMariaDBに乗り換えたいんです
具体的には、SQLServer Expressから月500円の激安マネージドMariaDBに乗り換えたいんです
929デフォルトの名無しさん
2020/10/13(火) 16:48:03.80ID:mavYzj73 あるよ。
930デフォルトの名無しさん
2020/10/13(火) 16:50:21.93ID:XwYEVn5U931デフォルトの名無しさん
2020/10/13(火) 17:00:55.89ID:cMrfgH2T 月500円の激安マネージドMariaDBに問い合わせろ
932デフォルトの名無しさん
2020/10/13(火) 17:16:14.21ID:401SSeVR MariaDBで動かして見て、どんな感じのテーブルが作られるか自分で確認して、手動で移行するしかないのかな?
933デフォルトの名無しさん
2020/10/13(火) 17:33:50.55ID:qH5Vi/SO こんな質問するような馬鹿には無理では?
934デフォルトの名無しさん
2020/10/13(火) 17:45:52.97ID:/Rq/oe7M EFとか使ってれば差異はある程度吸収してくれるけど、
生SQLベッタベタに書いてたら厳しいだろうな
生SQLベッタベタに書いてたら厳しいだろうな
935デフォルトの名無しさん
2020/10/13(火) 19:34:28.59ID:RxzDulGv SQLiteでええやん
936デフォルトの名無しさん
2020/10/13(火) 19:57:12.80ID:qH5Vi/SO ↑追加の馬鹿が来た
937デフォルトの名無しさん
2020/10/13(火) 22:03:08.89ID:401SSeVR まあ無理そうだけど、どうやるんかな
なんか手段が用意されてないんだったら難しいわ
なんか手段が用意されてないんだったら難しいわ
938デフォルトの名無しさん
2020/10/14(水) 00:03:56.10ID:uO7Ua6+h あまりに頭が悪そうでコメントすると泥沼化しそう
こんなの雇ってるクソ会社あるのか
こんなの雇ってるクソ会社あるのか
939デフォルトの名無しさん
2020/10/14(水) 00:08:35.62ID:NlzTC5au 頭悪い奴「頭が悪そう」
940デフォルトの名無しさん
2020/10/14(水) 00:48:34.18ID:BYmezqa4 結論はこれ
「馬鹿には無理」
「馬鹿には無理」
941デフォルトの名無しさん
2020/10/14(水) 01:51:56.07ID:ZvC0XGAE そのソフトはデータベースを変更できるように作られているのだろうか
多分なってないのでソースコードレベルで変更が必要なのではないだろうか
多分なってないのでソースコードレベルで変更が必要なのではないだろうか
942デフォルトの名無しさん
2020/10/14(水) 05:50:47.73ID:z5Uy/Vd3 Ruby on Rails では、sqlite, postgresql, mysql の3大DB を、
単一のRuby ファイルで定義できる
それを実行したら、各DB の型に合わせて、表が作られる。
表の型などを抽象化してる
単一のRuby ファイルで定義できる
それを実行したら、各DB の型に合わせて、表が作られる。
表の型などを抽象化してる
943デフォルトの名無しさん
2020/10/14(水) 07:38:24.52ID:MAVLXRyI それだと最大公約数になるからDBのポテンシャルを発揮できない
944デフォルトの名無しさん
2020/10/14(水) 07:42:41.11ID:ntkkf+xd なんで突然ruby?
945942
2020/10/14(水) 08:08:27.41ID:z5Uy/Vd3 その代わり、個別のDB の特別な機能を使うと、可搬性が無くなる
どちらを選ぶか、難しい
どちらを選ぶか、難しい
946デフォルトの名無しさん
2020/10/14(水) 15:55:52.84ID:/YzYSvC9 >>944
別言語だけど Railsでは、そういう実装になってて
C#でも同様の実装になっていればデータベースを替えるのも簡単
という話だとおもうけど、そのアプリがMS SQL ServerとMariaDBと
どっちでも動作するようになっているのなら、インストールし直せば
OKなんじゃないかな
別言語だけど Railsでは、そういう実装になってて
C#でも同様の実装になっていればデータベースを替えるのも簡単
という話だとおもうけど、そのアプリがMS SQL ServerとMariaDBと
どっちでも動作するようになっているのなら、インストールし直せば
OKなんじゃないかな
947デフォルトの名無しさん
2020/10/14(水) 16:06:12.99ID:xu8Uupog このruby荒らしは実際に使ったこともないただの頭の悪い人とバレたな
948デフォルトの名無しさん
2020/10/14(水) 16:56:46.74ID:PQeg+6lO >>946
インストールし直せばってなんじゃい
ORM使ってDBMSに依存したSQLを書いてなければ
設定変更でアプリの修正は終わるって話
それはRails(ActiveRecord)でもEF Coreでも同じ
データ移行は別途必要
インストールし直せばってなんじゃい
ORM使ってDBMSに依存したSQLを書いてなければ
設定変更でアプリの修正は終わるって話
それはRails(ActiveRecord)でもEF Coreでも同じ
データ移行は別途必要
949デフォルトの名無しさん
2020/10/14(水) 18:54:47.87ID:MAVLXRyI 将来的にやるかどうかもわからないRDB移行を楽にするためのものというよりは
システム管理者がバックエンドのストレージを選べるメリットのほうが価値としては大きい
システム管理者がバックエンドのストレージを選べるメリットのほうが価値としては大きい
950デフォルトの名無しさん
2020/10/15(木) 00:54:01.16ID:VyNwlTHB ああ、あのrubyの変な人だったのか
951デフォルトの名無しさん
2020/10/15(木) 19:28:50.37ID:WZPJX9UA NGワード:uby
952デフォルトの名無しさん
2020/10/15(木) 21:16:23.76ID:j3TfrCLP ぅゅ……
953デフォルトの名無しさん
2020/10/16(金) 02:23:53.26ID:kSQNYYOM using System;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
int[,] ma = new int[,] { { 1, 2, 3 }, { 4, 5, 6 } };
int[,] mb = new int[,] { { 6, 3, 4 }, { 5, 1, 2 } };
int[,] mc = new int[2, 3];
for (int i = 0; i < 2; i++)
{
for (int j = 0; i < 3; j++)
mc[i, j] = ma[i, j] + mb[i, j];
}
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < 3; j++)
Console.Write(string.Format("{000}", mc[i, j]));
}
}
}
}
System.IndexOutOfRangeException: 'Index was outside the bounds of the array.'
というエラーが起きます
配列のレンジをはみ出してはいないと思うのですが、どう直したらいいんでしょうか
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
int[,] ma = new int[,] { { 1, 2, 3 }, { 4, 5, 6 } };
int[,] mb = new int[,] { { 6, 3, 4 }, { 5, 1, 2 } };
int[,] mc = new int[2, 3];
for (int i = 0; i < 2; i++)
{
for (int j = 0; i < 3; j++)
mc[i, j] = ma[i, j] + mb[i, j];
}
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < 3; j++)
Console.Write(string.Format("{000}", mc[i, j]));
}
}
}
}
System.IndexOutOfRangeException: 'Index was outside the bounds of the array.'
というエラーが起きます
配列のレンジをはみ出してはいないと思うのですが、どう直したらいいんでしょうか
954デフォルトの名無しさん
2020/10/16(金) 02:39:52.51ID:YCT/0knJ 2番目のforの条件式がjじゃなくてiになってるよ
955デフォルトの名無しさん
2020/10/16(金) 02:44:43.74ID:SmZ3YqvD 添字はこの手の問題が頻発するからなあ
956デフォルトの名無しさん
2020/10/16(金) 02:45:43.56ID:SmZ3YqvD C#なんだから型使えばいいのに
957953
2020/10/16(金) 02:52:28.99ID:kSQNYYOM ありがとうございました..
全然気づかなかったです
勉強法がわからないんで手持ちのC言語の参考書の例題をC#で一つづつ書き直してるところです
全然気づかなかったです
勉強法がわからないんで手持ちのC言語の参考書の例題をC#で一つづつ書き直してるところです
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 中国側が首相答弁の撤回要求、日本側拒否 [夜のけいちゃん★]
- 債券・円・株「トリプル安」に…長期金利1.755%まで上昇、円は対ユーロで史上最安値 [蚤の市★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★5 [ぐれ★]
- 映画「鬼滅の刃」の興行収入急減、日本行き航空券大量キャンセル…中国メディア報道 [蚤の市★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 【大分】佐賀関で大規模火災、170棟以上が延焼中 70代男性1人と連絡取れず [ぐれ★]
- フランス「G7に習近平主席を呼びたい」ドイツ「良い考えだ」 高市さん...? [237216734]
- 麻生太郎氏、高市政権と距離を置きはじめる(´・ω・`) [399259198]
- 【悲報】中国営業に熱心な日本人タレントたち、中国のイベントが続々と中止に… まだ予定中のアイドルとか歌手とかたくさんいるけど [452836546]
- 自閉症が「んなっしょい」と連呼するお🏡
- 【悲報】高市効果で「1ドル=160円」が相場へwwwwwwwwwwwwwwwwwwwwwwwwwwwww 止まらぬ高市円安💥💥 [871926377]
- 【悲報】SP500今日も暴落で完全に世界恐慌。高市恐慌として全世界で語り継がれそう [686538148]
