在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参数添加的一半示例包括“@”,另一半不包括它。我很可能只是不知道要搜索什么。 最后的选择是更改每个查询以使用参数名称前面的“@”,但这是用于管理公司货件的运输和运营应用程序,并且字面上有数千个参数。在回答导演的问题“如何进步?”时难以解释项目的投资回报率。碰巧是“我已经坚持了一个星期而且我差不多开始了。” 有没有人遇到这个问题,或者你知道如何关闭此设置,以便它可以解决没有“@”的参数名称?     
已邀请:
成功!每当您创建.NET解决方案时,都会自动导入System.Data。我删除了此引用并将其添加回来以确保我拥有此库的最新版本并修复了该问题。我必须有一个旧版本的这个库最初被拉入...我只能想到的东西。     
它由.NET Framework数据提供程序而不是Visual Studio处理。 这取决于数据源。请看这里:使用参数占位符 您可以尝试使用
System.Data.Odbc
提供商并使用
question mark (?)
占位符。在thios情况下,不要忘记以与查询中相同的顺序添加参数。     

要回复问题请先登录注册