Window_Loadedに次のコードを含むアプリケーション ( test.exeと呼びましょう) があります。
private void Window_Loaded(object sender, RoutedEventArgs e)
{
SqlConnection sqlConnection = new SqlConnection();
}
それ以上でもそれ以下でもありません。アプリケーションは問題なく動作します。空の構成ファイル ( test.config ) を同じディレクトリにコピーすると、アプリケーションがクラッシュします。
アプリケーション プロジェクトに構成ファイルを追加しませんでした。空の xml ファイルを手動で同じディレクトリにコピーし、名前を .config に変更しただけです (このファイルには xml 宣言のみが含まれており、後で使用されます)。
try-catch を使用して root の欠落に関する例外をキャッチできますが、アプリケーションが数秒後にクラッシュするという問題があります。
SqlConnection がこの構成ファイルを読み取るのはなぜですか? また、例外をキャッチした後でもアプリケーションがクラッシュするのはなぜですか?