我是一个ASP.Net 4.5解决方案,可以编译和编译。设置为ANYCPU时运行,但我需要更多内存的方法,这个项目将在x64环境中生存,所以我想重新编译并解决了问题。错误。成功构建后,尝试调试应用程序时出现此错误:
Exception Details: System.BadImageFormatException: Could not load file or assembly 'Core' or one of its dependencies. An attempt was made to load a program with an incorrect format.
到目前为止,我已经仔细检查了我的解决方案配置属性和所有项目属性,所有内容在x64都是一致的。
还有什么阻碍转换?或许只有32位参考?
**我已将我的应用发布到64位网络服务器,目标平台为ANYCPU。私有内存限制约为6GB。在运行内存密集型方法(通过ClosedXML库导出到excel)时,应用程序使用的内存达到峰值@ 2.7gbs并刷新,然后提高OutOfMemory错误。 应用程序似乎仍在32位模式下运行?
***修复:我通过将其添加到事件后构建选项中来停止抛出OutOfMemory异常:
call "$(DevEnvDir)..\..\vc\vcvarsall.bat" x86
"$(DevEnvDir)..\..\vc\bin\EditBin.exe" "$(TargetPath)" /LARGEADDRESSAWARE
答案 0 :(得分:2)
AnyCPU意味着您的应用程序将在64位IIS上作为64位进程运行,在32位Cassini dev服务器上作为32位进程运行。您无法在32位Cassini上运行为x64编译的应用程序。
底线是:你对AnyCPU目标很好,你将获得x64环境的好处。