0

プログラムに問題があり、すべてがデバッグ モードで動作しますが、リリースに切り替えると InvalidOperationException が発生します。

_sqlcon.ConnectionString = "Data Source=" + Properties.Settings.Default.serverAdress + ";" + "Initial Catalog=" + Properties.Settings.Default.initialDB + "; User ID=" + Properties.Settings.Default.sqlID + "; Password=" + Properties.Settings.Default.sqlPass + ";" + "Connect Timeout=" + Properties.Settings.Default.timeOut + "; Asynchronous Processing = true;";

これは私の接続文字列です

Data Source=.\\SQLEXPRESS;Initial Catalog=visondb; User ID=sql; Password=test;Connect Timeout=30; Asynchronous Processing = true;

そして、私は簡単に接続を開こうとします

        try
        {
           // await dbConnAsync(_sqlcon);   
            _sqlcon.Open();
        }
        catch (SqlException ex)
        {
            MessageBoxResult result = System.Windows.MessageBox.Show(ex.ToString());
        }

しかし、リリースでは機能せず、exeを使用しているときに、「プログラムが応答しなくなった」というウィンドウが表示されます。

エラーを探す場所は?

4

1 に答える 1

1

私の最善の推測(ここでの限られた情報に基づく)は、接続文字列を生成するためにリリースからプルしている値の1つは次のいずれかであるということです。 Properties.Settings.Default

  • 空白(空の文字列)、または
  • あなたが期待するものではありません。

したがって、無効な接続文字列を作成します。

前にその行でデバッグし、_sqlcon.Open();リリースモードのときに接続文字列が期待どおりであることを確認する必要があります。

于 2013-03-08T20:16:26.847 に答える