我想从.NET 3.0升级WCF的Web服务到4.我已经运行
Aspnet_regiis.exe
和
ServiceModelReg.exe
以及将应用程序池更改为使用v4.0。 我重build了.NET 4.0的服务DLL作为目标,并将其移动到我的网站上的/ bin目录。
我遇到了一个令我疯狂的错误。 每当我尝试击中该网站,我得到以下错误:
HTTP Error 500.19 - Internal Server Error The requested page cannot be accessed because the related configuration data for the page is invalid.
configuration节“system.serviceModel”不能被读取,因为它缺less一个节声明
我尝试过使用Googlesearchfind的解决scheme,没有任何工作。 我觉得像IIS 7更有经验的人会知道到底什么是错的。 任何人都可以帮助这个问题
我发现了这个问题。 我需要安装此处所述的修补程序 ,这是WCF代码示例的“WCF示例的一次性安装过程”中的第3步。
试试aspnet_regiis.exe / iru
有些事情你可以检查:
您是否将您的应用程序中的WCF引用更改为Framework 4.0版本?
以下是Microsoft支持文章: 安装.NET Framework 4.0后的错误消息:“无法加载types”System.ServiceModel.Activation.HttpModule“” :
出现此问题的原因是Windows进程激活服务(WAS)的Applicationhost.config文件定义了以下部分,并且此部分与.NET Framework 4.0 […]兼容。
.svc:确保IIS和WCF已正确安装并注册: http : //msdn.microsoft.com/zh-cn/library/aa751792.aspx
确保服务器angular色/function(将是3.5版本)中安装了WCF HTTP激活function,然后重新安装.NET Framework 4.0。 (您必须从下载中安装它,而不是Windows组件/function的一部分)
如果幸运的话,应该重新注册脚本映射,以使.NET 4能够成功接收来自IIS的WAS HTTP激活请求,而不是绕过3.5版,而不理解被要求做什么。
理论上,.NET Framework 4.0目录下的aspnet_regiis / i也应该这样做,但是你说你已经试过了。