以前没有问题的代码出现异常

时间:2015-08-20 12:10:48

标签: c# adodb

我的项目突然在一个功能中突然出现问题,该功能一直运行良好。这是一个在我的sql server上调用存储过程的函数:

ADODB.Command MyCommand = new ADODB.Command();
ADODB.Parameter TableNameParameter = MyCommand.CreateParameter("@TableName", ADODB.DataTypeEnum.adVarChar, ADODB.ParameterDirectionEnum.adParamInput, 50, TableName);
MyCommand.Parameters.Append(TableNameParameter);  

当它尝试附加第一个参数时,它会在上面的行中引发异常:

  

无法将类型为“System .__ ComObject”的COM对象强制转换为类类型   'ADODB.InternalParameter'。表示COM的类型的实例   组件不能转换为不代表COM的类型   部件;

     

然而,只要基础COM,它们就可以转换为接口   component支持QueryInterface调用接口的IID。

我发现了一个类似的帖子来自修改此问题的人通过将引用从2.8更改为2.7但是我是C#的新手,并且不知道如何执行此操作。有人可以帮忙,或建议另一个修复。

1 个答案:

答案 0 :(得分:1)

如果修复程序实际上只是将参考文件回滚到以前的版本,则可以通过单击解决方案资源管理器中的引用在您的解决方案中执行此操作。

enter image description here

从那里选择ADODB的参考,然后右键单击并删除2.8版本。

然后右键单击引用并选择添加引用。

然后您可以浏览该文件或在该窗口的COM列表中选择它。 确保这次选择2.7版本。