在VS2010中调试时,DB Query不再识别现有应用程序中的SQL参数
我刚刚开始使用我从别人那里继承的应用程序而且我遇到了一些问题。该应用程序使用C#编写,并在VS2010中针对3.5框架运行。我无法在我的机器上运行应用程序进行调试,因为在编写数据库查询时它无法识别它们引用参数的方式。
例如,无论他们有SQL或DB2查询,它都是这样编写的:
using (SqlCommand command = new SqlCommand(
"SELECT Field1 FROM Table1 WHERE FieldID=@FieldID", SQLconnection))
{
command.Parameters.AddWithValue("FieldID", 10000);
SqlDataReader reader = command.ExecuteReader();
...
如果您注意到“parameters.AddWithValue(”FieldID“,10000);”声明不包括原始命令文本中的“@”符号。当我在我的机器上运行它时,我收到一条错误消息,指出无法找到参数“FieldID”。
我改变了这一行:
command.Parameters.AddWithValue("FieldID", 10000);
对此:
command.Parameters.AddWithValue("@FieldID", 10000);
一切都很好......直到它遇到下一个SQL调用并以相同的错误轰炸出来。显然这必须是视觉工作室内的一个环境,但我在互联网上找不到任何关于它的内容。 SQL参数添加的一半示例包括“@”,另一半不包括它。我很可能只是不知道要搜索什么。
最后的选择是更改每个查询以使用参数名称前面的“@”,但这是用于管理公司货件的运输和运营应用程序,并且字面上有数千个参数。在回答导演的问题“如何进步?”时难以解释项目的投资回报率。碰巧是“我已经坚持了一个星期而且我差不多开始了。”
有没有人遇到这个问题,或者你知道如何关闭此设置,以便它可以解决没有“@”的参数名称?
没有找到相关结果
已邀请:
2 个回复
亨尖玛次酥
炉挤仙挟
提供商并使用
占位符。在thios情况下,不要忘记以与查询中相同的顺序添加参数。