发布到win7 64位旗舰版iis上时,报:“未能加载文件或程序集“BC.Common”或它的某一个依赖项。试图加载格式不正确的程序”。
该DLL的本地复制没有设置为true(在项目引用里找到该引用,右键属性里有这个“本地复制”)。所有发布的时候,他不会自动复制到bin目录里。从而出现了上述未能加载的错误。
解决方法:1.要么该项目引用属性,要么就直接把那个dll复制到发布在服务器上的bin目录里吧。我复制进去后,问题又来了,还是未能加载一个引用项。
后来一想我iis所在的服务器是64位的,而我的odp.NET是装在32位的系统,所以对应的BC.Common.dll也应该是32位的,这里涉及iis的配置了。
dll有了,32位的,系统是64位的。这个在iis里有一个设置如下
先看看项目使用的应用程序池是哪个:
然后去应用程序池配置,
设置启用32位应用程序为true。