在Windows Server 2008 R2上使用WCF .NET 4.5

17
在Windows Server 2008 R2中,我无法从服务器管理器激活.NET 4.5的WCF Http / Tcp激活Windows功能。尽管在Windows Server 2008 R2的IIS中可以安装和使用.NET 4.5,但是Windows Server 2008 R2的服务器管理器不支持.NET 4.5。我可以在本地的Windows 8中使用“打开或关闭Windows功能”窗口进行激活。但是,在Windows Server 2008中,相同的“打开或关闭Windows功能”窗口链接会带您进入服务器管理器。此外,Powershell也不会在Server 2008上列出它。如何在Windows Server 2008的.NET Framework 4.5高级服务下安装WCF服务的HTTP激活和TCP激活?

3
我可能错了,但如果您在安装.NET 4.5的可再发行版本时检查了.NET 3.5,它将自动设置您已经勾选的内容。 - PCG
4
在Win2008R2中没有.NET 4.5选项。只需按照P_G所说的检查3.5组件,然后从可再分发的软件包安装4.5框架即可。2008 R2将可以运行.NET 4.5。我们在生产环境中的工作中,在Win2008R2上运行了几个基于4.5的WCF服务。 - Tim
1个回答

8
P_G的评论是正确的。如果勾选了该选项,并且稍后安装了.NET 4.5,则会使用这些功能进行安装。
我主要想为.NET 4.5打开此选项,以解决如果未运行WCF激活服务而出现的部分未定义错误。
我还注意到,当使用Set-WebConfigurationProperty时,PowerShell仍会引发上述错误。这是因为服务器2008中的PowerShell尝试从.NET 2.0上下文(.NET 3.5和3.0与.NET 2.0共享配置文件位置)解析web.config并失败,因为在那个位置上没有定义system.serviceModel。
然而,该应用程序可以正常工作,因为IIS网站使用()并在那里定义。
检查该复选框也将在中定义该部分,因此PowerShell现在也可以解析web.config并设置iis属性。

1
谢谢,这对我很有帮助。在添加所有所需的角色和功能后,我没有需要手动更改任何配置,只是修复了.NET 4.5。现在一切都正常工作,没有进一步的配置更改。 - ghostJago
启用了非HTTP激活并修复了.NET 4.6.1之后,这对我有用!!!非常感谢! - shindigo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接