更新
无视我下面的评论。虽然它让我通过了部署,503 Service Unavailable
但当我真正尝试运行 Web 应用程序时,我得到了一个。managedRuntimeVersion
我通过将属性设置回 v4.0 来取消此更改并将其添加IgnoreDeployManagedRuntimeVersion
到我的项目中。然后部署成功并且应用程序正常工作。哑的...
这发生在我在 Windows Server 2008 R2 SP1 机器上安装 .NET Framework 4.5.1 之后(作为升级 Powershell 的一部分)。
Windows Server 2008 上的 IIS 用户界面没有提供将managedRuntimeVersion
属性设置为 v4.5 的选项,即使在安装了该版本之后也是如此。appcmd
但是,正如@3boysdad 的回答所示,这可以使用实用程序在命令行上完成。
appcmd
是管理 IIS 站点、应用程序、应用程序池等的命令行等效项。它位于%systemroot%\system32\inetsrv\appcmd.exe
但不在 PATH 上,如下链接所述:
http://www.iis.net/learn/get-started/getting-started-with-iis/getting-started-with-appcmdexe#HowToUse
我认为修改你的项目(通过IgnoreDeployManagedRuntimeVersion
orDeployManagedRuntimeVersion
属性)是次优的。应用程序池应设置为使用 v4.5,而在 Windows Server 2008 上执行此操作的唯一方法是使用该appcmd
实用程序。@3boysdad 的答案应该是公认的答案。