![](/img/trans.png)
[英]InvalidOperationException on SqlCommand.ExecuteScalar()
[英]Visual Studio stops debugging when SqlCommand.ExecuteScalar() is executed
我的应用程序中有此代码
SqlConnection sqlConnection1 = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand();
cmd.CommandType = System.Data.CommandType.Text;
sqlConnection1.Open();
cmd.CommandText = "SELECT S2 FROM CDUSR WHERE N100 = " + N100.ToString() ;
var HashStr = cmd.ExecuteScalar();
sqlConnection1.Close();
当我到达终点线
var HashStr = cmd.ExecuteScalar();
Visual Studio 2015停止调试我的应用程序,没有任何错误。
connectionString
包含有效的连接字符串(我已经测试过)
此查询SELECT S2 FROM CDUSR WHERE N100 = 6369
在SSMS中成功执行。
我想知道问题是什么。 S2包含以下字符串:
a4sd4545ag5645sdfa55sdf45fv5er5cfvg5s45
您是否使用了正确的SqlCommand构造函数? 在我看来,您至少是失踪了:
cmd.Connection = sqlConnection1
创建命令时,最好在构造函数中执行以下操作:
SqlCommand cmd = new SqlCommand("SELECT S2 FROM CDUSR WHERE N100 = " + N100.ToString()), sqlConnection1)
using块也将很好:
using(SqlCommand cmd = new SqlCommand(blah blah)) { cmd.ExecuteScalar; }
我想Visual Studio会停止调试,因为您的代码会引发异常(您的SqlCommand与您使用的SqlConnection没有关联)...也许您在“异常设置”中禁用了“公共语言运行时异常”,所以您实际上看不到引发异常...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.