Visual Studio 2010 - 无法构建引用64位程序集的Web站点

时间:2010-11-19 22:20:07

标签: visual-studio-2010

Web应用程序如何引用64位程序集?

我有一个带有Web应用程序和类库的解决方案。类库设置为64位构建。默认情况下,Web应用程序是任何CPU ,但如果我构建并运行,则会出现以下错误:

  

无法加载文件或程序集“ClassLibrary64,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null”或其依赖项之一。尝试加载格式不正确的程序。

我无法在32位或任何CPU上运行项目 - 我正在与SharePoint 2010进行交互,并且网站必须以64位运行,否则SharePoint API无效。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

IIS可能以32位运行。为什么不将类库构建为AnyCPU?

答案 1 :(得分:0)

这是因为您的Web应用程序正在被JIT编译为32位,因此您无法将64位程序集加载到工作进程中。

您需要将Web应用程序程序集编译为特定位数的原因很少。你需要将类库设置为x64,还是可以将其保留为AnyCPU?

此外,IIS是否在64位操作系统的64位机器上运行?如果其中任何一个只是32位,那么无论如何你都无法加载64位汇编。