未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项.试图加载格式不正确的程序
.NET:Microsoft Visual Studio 2010 + .NET Framework 3.5
操作系统:windows2008 R2 64 位操作系统
oracle数据库:32位的ODP.NET 2.0版本
FluroineFx:FluorineFx v1.0.0.15 (点击可下载)
FluorineFx的应用程序,发布到iis上时,报:”未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项。试图加载格式不正确的程序。“。
项目中的oracle提供的.net访问oralcle数据库的这个 Oracle.DataAccess.dll的复制本地没有设置为true(在项目引用里找到该引用,右键属性里有这个”复制本地").所有发布的时候,它不会自动复制到bin目录里。从而出现了上述未能加载的错误。如下图所示:
要么修改该项目中该引用属性,要么就直接把那个dll复制到发布在服务器上的bin目录里。我的iis服务器是64位的,而我的 odp.net是装的32.所以对应的 Oracle.DataAccess.dll也应该是32位的,这里涉及iis的配置了。Oracle.DataAccess.dll是32位的,系统是64位的。
这个在iis里有一个设置如下如:先看看项目使用的应用程序池是哪一个:
然后去应用程序池去配置,先找到Test应用程序池
右键高级设置
设置启用32位应用程序 为true
OK, 一切正常。
需要注意的是我这里的Test应用程序池在基本设置里面托管管道模式 选择的是经典
活着就要做有意义的事,最有意义的事就是好好活。