我们正在部署一个ASP.NET 4.0 Web应用程序,该应用程序在其Web.config文件的<httpModules>
部分中包含此声明:
<add name="ServiceModel" type="System.ServiceModel.Activation.HttpModule, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="managedHandler"/>
在大多数安装中,这既好又必要。但是,在两个安装中,我们得到了关于重复条目的以下错误。在出现此错误的两个安装中,我们发现此声明已存在于此处:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\web.config
没有错误的安装(大多数安装)在上面的文件中没有该行。为什么Framework的Web.config文件在安装过程中不一致?我们还无法确定确切的差异。这些主要是服务器与Windows Server 2003或Windows Server 2008,但也有一些Windows 7的测试框。工作安装是上述的混合,两个非工作安装是Windows Server 2008和Windows 7.所有安装都有已安装.NET 4完整配置文件。
详细错误信息
模块IIS Web核心
通知BeginRequest
处理程序尚未确定
错误代码0x800700b7
配置错误
Cannot add duplicate collection entry of type 'add' with unique key attribute 'name' set to 'ServiceModel'
配置文件
\\?\C:\Inetpub\wwwroot\web.config
请求的网址http://localhost:80/
物理路径C:\Inetpub\wwwroot
登录方法Not yet determined
登录用户Not yet determined
98: <add name="ServiceModel" type="System.ServiceModel.Activation.HttpModule, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="managedHandler"/>
答案 0 :(得分:3)
启用以下Windows功能时,该模块已安装(到基本.NET Framework配置文件中):
Microsoft .NET Framework 3.5.1 - &gt; Windows Communication Foundation HTTP激活
启用WCF HTTP激活时,它会向IIS注册WCF。这包括添加WCF激活模块,添加.svc文件的脚本映射等