32位和64位ASP.NET部署

时间:2010-12-31 21:07:24

标签: c# asp.net msbuild

我开发的ASP.NET / C#代码本质上是32/64位不可知的,因为它被编译成某种中间语言?我问的原因是我在x64笔记本电脑上编译我的ASP.NET应用程序,然后在x32服务器上部署。没有问题。此外,我看不到在VS2010中选择32位和64位之间的选项。

2 个答案:

答案 0 :(得分:4)

您可以将代码编译为

  • AnyCPU - 在32位运行时以32位执行,在64位运行时以64位执行
  • x86 - 强制执行32位
  • x64 - 强制执行64位(无法在32位操作系统上运行)
  • (IA64 - Itanumim)

如果您为AnyCPU编译,您的状态良好,而且通常情况下,您将使用AnyCPU平台目标。 (构建 - > Visual Studio中的配置管理器)

编译.Net代码时,它编译成中间语言代码(MSIL),后者在运行时由.Net framework / runtime编译为本机代码。

答案 1 :(得分:0)

有些第三方库只能作为x86运行。

最好的方法是让本地环境(本地IIS)尽可能地匹配目标Web服务器的设置。因此,如果目标IIS仅以32位运行,请将本地IIS上的应用程序池的“强制32位”属性设置为true。