部署 x64 ASP.NET Web 应用程序时无法加载程序集错误
Unable to load assembly error deploying x64 ASP.NET web application
我开发了一个 ASP.NET 仅包含通用 http 处理程序的 Web 应用程序。
我开始使用 IISExpress 在 x86 开发机器上进行本地测试,然后部署在带有 IIS6.0 的 32 位 Windows 2003 服务器上,一切顺利。
我的公司决定更新到 x64 环境,以便利用一些针对 64 位环境优化的第三方库,因此我们切换到 64 位 Windows Server 2012 R2 标准版,但我我遇到了一些麻烦。
在我的本地机器上,现在切换到平台目标设置为 x64 的 x64 开发机器一切顺利,但在服务器上部署时我总是得到
System.BadImageFormatException
在主组件上。错误消息的其他部分表示程序集管理器由
加载
C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
并用
执行
C:\Windows\SysWOW64\inetsrv\w3wp.exe
由于 SysWOW64 需要在 64 位环境中 运行 32 位应用程序,可能生产机器上的 IIS 服务器未启用 运行 x64 网络应用程序?
如果是这样,我应该怎么做才能克服这个问题,因为我知道我无法直接访问服务器。
谢谢。
错误和路径:
C:\Windows\SysWOW64\inetsrv\w3wp.exe
和
C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
...绝对证明您要部署到的生产服务器是 运行 其 32 位模式的网站应用程序池,或者无论如何肯定是您的。
作为网络托管服务商,出于一系列遗留原因,我们也这样做。谈谈,看看他们是否会将其恢复为本机 64 位模式。
我开发了一个 ASP.NET 仅包含通用 http 处理程序的 Web 应用程序。 我开始使用 IISExpress 在 x86 开发机器上进行本地测试,然后部署在带有 IIS6.0 的 32 位 Windows 2003 服务器上,一切顺利。
我的公司决定更新到 x64 环境,以便利用一些针对 64 位环境优化的第三方库,因此我们切换到 64 位 Windows Server 2012 R2 标准版,但我我遇到了一些麻烦。
在我的本地机器上,现在切换到平台目标设置为 x64 的 x64 开发机器一切顺利,但在服务器上部署时我总是得到
System.BadImageFormatException
在主组件上。错误消息的其他部分表示程序集管理器由
加载C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
并用
执行C:\Windows\SysWOW64\inetsrv\w3wp.exe
由于 SysWOW64 需要在 64 位环境中 运行 32 位应用程序,可能生产机器上的 IIS 服务器未启用 运行 x64 网络应用程序? 如果是这样,我应该怎么做才能克服这个问题,因为我知道我无法直接访问服务器。
谢谢。
错误和路径:
C:\Windows\SysWOW64\inetsrv\w3wp.exe
和
C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
...绝对证明您要部署到的生产服务器是 运行 其 32 位模式的网站应用程序池,或者无论如何肯定是您的。
作为网络托管服务商,出于一系列遗留原因,我们也这样做。谈谈,看看他们是否会将其恢复为本机 64 位模式。