我有一个工作的ASP.NET MVC 3应用程序。这个项目是用VS 2010构建的,目标是.NET 4.0。现在,我将它重新定位到.NET 4.5,并成功地重新编译。试图将其部署到我们的测试服务器(Windows2008 R2 SP1)现在失败了:
错误代码: ERROR_APPPOOL_VERSION_MISMATCH更多信息:您试图使用的应用程序池将'managedRuntimeVersion‘属性设置为'v4.0’。这个应用程序需要'v4.5‘。了解更多信息,请访问:MISMATCH。
服务器安装了.NET 4.5,但是没有应用程序池4.5 (因为它是内部升级,据我所知,4.0池应该可以)。客户端机器有VS 2012,所以Web 3(之前是Web 2)。我还将Web 3安装到服务器上。
试图重新注册ASP.NET与aspnet_regiis -没有运气。
为什么我要得到错误,以及如何修复它?太让人沮丧了..。
附注:找到了关于RC的similar question,但没有帮助
更新:
看来this is a bug微软自CTP以来就没有进行过修复。IgnoreDeployManagedRuntimeVersion属性做到了这一点。太遗憾了!
发布于 2012-10-19 10:13:17
Windows 2012默认情况下包括.NET 4.5,以及(添加DefaultAppPool服务器角色时) IIS有以下应用程序池:DefaultAppPool、.NET v4.5、.NET v4.5经典版,使用.NET Framework4.0(因为4.5是内部升级的4.0)。但是,如果我们在安装了Windows 4.0的Windows 2008上安装.NET 4.5可再发行版,则不会重命名池: ASP.NET v4.0,ASP.NET v4.0经典版。这就是Web部署失败的关键。
发布于 2013-07-20 20:53:19
您可以尝试将此属性添加到项目中:
<IgnoreDeployManagedRuntimeVersion>True</IgnoreDeployManagedRuntimeVersion>发布于 2013-11-23 19:51:56
@葛根:不尝试,这会成功的。
安装果园CMS时也有同样的问题。继续瞄准2.0版。但是要找到简单的解决方案:在IIS中,在应用程序池(包含所有应用程序池的列表)上,您可以找到第二个设置右上角的列表:“设置Application默认值.”将缺省值从2.0更改为4.0 et,瞧。
https://stackoverflow.com/questions/12819988
复制相似问题