OracleParameterCollection仅接受非空OracleParameter类型对象,而不接受OracleParameter对象

时间:2011-08-18 22:33:11

标签: oracle11g asp.net-4.0

我收到以下错误:

OracleParameterCollection只接受非空的OracleParameter类型对象,而不接受OracleParameter对象。

代码是这样的:

System.Data.Common.DbCommand dbCommand = Db.GetStoredProcCommand("ARCHIVE.FSP_STACKHOLDERSBYCREDENTIALS");
dbCommand.Parameters.Add(new OracleParameter("P_Password", password));

我的oracle DB是:在Windows 7(x64)上运行的11gR2 x64 我的项目是:.Net 4.0 / Visual studio 2010(build:any cpu) IIS:7.5 / app pool:默认(asp.net4.0 /集成) 我的ODP.Net来自:ODAC112021Xcopy_32bit

注意:我无法将我的Oracle.DataAccess.dll更改为x64版本,因为该项目取决于一些旧的dll(这是因为更改为使用Oracle.DataAccess.dll x64版本,需要也可以将PlatformTarget设置为x64)

那我该怎么办? 提前谢谢

1 个答案:

答案 0 :(得分:1)

问题出在我自己身上!我不恰当地混淆了Db.GetStoredProcCommand()函数。导致创建System.Data.Oracle.OracleCommand,它来自microsoft提供程序而不是oracle客户端提供程序。 但是例外文本确实具有误导性!