我的程序有问题,一切都在调试模式下工作但是当我切换到发布时我得到了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时,我只是得到窗口“程序停止响应”。
在哪里寻找错误?
答案 0 :(得分:1)
我最好的猜测(基于此处的有限信息)将是您从发布 Properties.Settings.Default
中提取的值之一,以生成您的连接字符串
因此创建了无效的连接字符串。
您应该在_sqlcon.Open();
之前的行上进行调试,并确保连接字符串符合您在发布模式下的预期。