【发布时间】:2010-12-31 21:07:23
【问题描述】:
我开发的 ASP.NET/C# 代码本身是否与 32/64 位无关,因为它被编译为某种中间语言?我问的原因是我在 x64 笔记本电脑上编译我的 ASP.NET 应用程序,然后部署在 x32 服务器上。没有问题。此外,我看不到在 VS2010 中选择 32 位和 64 位版本的选项。
【问题讨论】:
我开发的 ASP.NET/C# 代码本身是否与 32/64 位无关,因为它被编译为某种中间语言?我问的原因是我在 x64 笔记本电脑上编译我的 ASP.NET 应用程序,然后部署在 x32 服务器上。没有问题。此外,我看不到在 VS2010 中选择 32 位和 64 位版本的选项。
【问题讨论】:
你可以把你的代码编译成
如果您为 AnyCPU 编译,您的状态就很好,而且通常情况下,您将使用 AnyCPU 平台目标。 (构建 -> Visual Studio 中的配置管理器)
在编译 .Net 代码时,它会被编译成中间语言代码 (MSIL),然后由 .Net 框架/运行时在运行时将其编译为本机代码。
【讨论】:
有些第三方库只能作为 x86 运行。
最好的方法是让您的本地环境(本地 IIS)尽可能地匹配您的目标网络服务器的设置。因此,如果您的目标 IIS 仅以 32 位运行,请将本地 IIS 上的应用程序池的“强制 32 位”属性设置为 true。
【讨论】: