我有Windows 10机器。我正在运行一个引用Oracle.DataAccess.dll
的c#项目。我已经安装了 ODAC112012_32Bit 。有一个dll NexFen.FirmLoad
可以访问Oracle dll。当我运行项目时,我得到以下错误:
System.TypeInitializationException:类型初始值设定项 'NexGen.FirmLoad.AppUtils'引发了一个例外。 ---> System.IO.FileLoadException:无法加载文件或程序集 'Oracle.DataAccess,Version = 4.112.3.0,Culture = neutral, PublicKeyToken = 89b483f429c47342'或其依赖项之一。该 找到程序集的清单定义与程序集不匹配 参考。 (HRESULT异常:0x80131040)---> System.IO.FileLoadException:无法加载文件或程序集 'Oracle.DataAccess,Version = 4.112.1.2,Culture = neutral, PublicKeyToken = 89b483f429c47342'或其依赖项之一。该 找到程序集的清单定义与程序集不匹配 参考。 (来自HRESULT的异常:0x80131040)---内心的结束 异常堆栈跟踪---在NexGen.FirmLoad.AppUtils..cctor()中 ---内部异常堆栈跟踪结束---在NexGen.FirmLoad.LoadFirmware.d__0.MoveNext()
答案 0 :(得分:0)
检查您的项目是否满足以下所有条件:
Oracle.DataAccess.dll
,Oracle客户端和应用程序的编译目标全部具有相同的架构(即32位与64位)Oracle.DataAccess.dll
版本与Oracle客户端版本相同(即使是次要版本也必须匹配)。您的错误消息表明版本为4.112.3.0
和4.112.1.2
,可能是您的问题。检查GAC和策略中的已安装版本。