前回同様の質問がありましたが、ロジックステートメントの前に変数の値を初期化して設定すると、ロジックステートメント内で生成された値を使用できます。if文で宣言された変数の使い方は?
今回は、接続文字列が空であるかどうかによって、2つのメソッドオーバーロードのうちの1つを呼び出したいとします。そのようです。
if (ConnectionString != "") // if there is something in the config file work with it
{
SqlConnection dataConnection = new SqlConnection(ConnectionString);
}
else
{
SqlConnection dataConnection = new SqlConnection();
}
try {
// ...
問題は、tryブロック内のすべてが、dataConnectionについて認識しないために失敗することです。
これを動作させるにはどうすればよいですか?
接続文字列がない場合は、どこから来ると思われますか? SqlConnectionがそれを作成するとは思わない、または空から落ちるだろう。あなたは 'else'の状態で何をしますか?クラッシュ? –
はい、接続文字列ビルダーはtryブロックにあります。 – Rob
すてきな答えをお寄せいただきありがとうございます!今非常にはっきりしています。 – Rob