wcf Web 服务配置中的重复键



我在WCF Web服务中有此配置:

<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" closeTimeout="00:03:00" openTimeout="00:03:00" receiveTimeout="00:03:00" sendTimeout="00:03:00">
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="200000" maxNameTableCharCount="2147483647" />
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://webserver/myService.svc" binding="basicHttpBinding" contract="IService" name="IService" />
<endpoint address="http://webserver/myService1.svc" binding="basicHttpBinding" contract="Documents.IDocService" name="Documents.IDocService" />
</client>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="false" />
</behavior>
</serviceBehaviors>
</behaviors>
<protocolMapping>
<add scheme="http" binding="basicHttpBinding"  />
</protocolMapping>
</system.serviceModel>

我在跟踪文件(诊断 svclog)中收到以下警告。

配置系统检测到不同类别中的重复密钥 配置范围,并使用较新的值覆盖。

它指向以下行:

<protocolMapping>
<add scheme="http" binding="basicHttpBinding"  />
</protocolMapping>

我看不出有什么可以复制的。你能给我一个提示吗?

发生这种情况是因为您有另一个配置部分定义此协议映射的行为。在协议映射中使用<clear/>标记将删除第一个配置。这适用于所有相同的冲突,也出现在连接字符串中。当您从另一个应用程序调用一个服务时,上层配置可能会覆盖第二个服务中的某些行为......

如果添加清除,则删除重复项:

<protocolMapping>
<clear/>
<add scheme="http" binding="basicHttpBinding"  />
</protocolMapping>

喜欢这个。

相关内容

  • 没有找到相关文章

最新更新