如几个问题(Alternative for the Registering ASP.NET 4.5 on Windows Server 2012; Server 2012 IIS 8 MVC app shows default IIS home page or 403 / 404 errors; WCF on IIS8; *.svc handler mapping doesn't work)中所述,在Windows Service 2012上,aspnet_regiis -ir
命令不再起作用,而是产生以下输出:
此版本的操作系统不支持此选项。 管理员应该使用IIS8安装/卸载ASP.NET 4.5 使用“打开/关闭Windows功能”对话框,服务器管理器 管理工具或dism.exe命令行工具。更多细节 请参阅http://go.microsoft.com/fwlink/?LinkID=216771。
在我们的例子中,我们只想运行此命令来重新注册ASP.NET 4.5,因为其他一些安装未注册它:已经安装了ASP.NET 4.5。
使用UI(添加/删除角色/功能),受到引用帖子的启发,我发现删除WCF的HTTP激活功能然后再添加它就足够了。 (但我需要卸载/重新安装一个恰好依赖于WCF HTTP激活的功能......)
问题:如何通过Windows Server 2012上的命令行完成同样的事情?
(我查看了这个dism.exe
的内容,但它看起来令人生畏,dism.exe -?
根本没有帮助我。)
谢谢!
答案 0 :(得分:4)
Dism是最好的方法:
Dism /online /Disable-Feature /FeatureName:WCF-HTTP-Activation45
Dism /online /Enable-Feature /FeatureName:WCF-HTTP-Activation45
启用所有父功能时使用/ all开关。
答案 1 :(得分:3)
当您安装.NET框架核心功能(即.NET 3.5 over CLR 2.0,包括已在安装了.NET Framework 4.5版本的Windows 2012或2012 R2服务器上进行HTTP激活)时,似乎会发生此错误。
在我们的案例中,建议的修复程序不起作用。
我们有一个显示错误的CLR 4.0网站:
Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
删除并重新添加ASP.NET 4.5功能没有任何区别。
我们必须使用DISM删除并重新添加3.5功能:
Dism /online /Disable-Feature /FeatureName:WCF-HTTP-Activation
Dism /online /Enable-Feature /FeatureName:WCF-HTTP-Activation
您也可以使用PowerShell:
Remove-WindowsFeature -Name NET-HTTP-Activation
Add-WindowsFeature -Name NET-HTTP-Activation
答案 2 :(得分:0)
您需要使用服务器管理器信息中心添加/删除角色/功能。 寻找IIS - > WebServer - >应用程序开发 - > ASP.NET 4.5