【发布时间】:2011-03-23 20:25:25
【问题描述】:
在 Visual Studio 2010 中使用 .NET 4 和 Silverlight 4,我正在尝试按照 MSDN 指南为 Silverlight 客户端 (http://msdn.microsoft.com/en-us/library/cc645027(v=vs.96).aspx) 构建双工服务。
Web.config 给出警告:
警告 26 元素“绑定”具有无效的子元素 'pollingDuplexHttpBinding'。预期的可能元素列表: 'basicHttpBinding, customBinding, msmqIntegrationBinding, netPeerTcpBinding、netMsmqBinding、netNamedPipeBinding、netTcpBinding、 wsFederationHttpBinding, ws2007FederationHttpBinding, wsHttpBinding, ws2007HttpBinding、wsDualHttpBinding、netTcpContextBinding、 wsHttpContextBinding、basicHttpContextBinding、mexHttpBinding、 mexHttpsBinding, mexNamedPipeBinding, mexTcpBinding, webHttpBinding'。 C:\DuplexService\DuplexService\Web.config
我无法将服务引用添加到客户端。我无法在 WCF 测试客户端中加载服务。我在很多地方寻找答案。我不明白问题出在哪里。
web.config 当前如下所示:
<!-- Register the binding extension from the SDK. -->
<extensions>
<bindingExtensions>
<add name=
"pollingDuplexHttpBinding"
type="System.ServiceModel.Configuration.PollingDuplexHttpBindingCollectionElement,System.ServiceModel.PollingDuplex, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</bindingExtensions>
</extensions>
<bindings>
<!-- Create the polling duplex binding. -->
<pollingDuplexHttpBinding>
<binding name="multipleMessagesPerPollPollingDuplexHttpBinding"
duplexMode="MultipleMessagesPerPoll"
maxOutputDelay="00:00:07"/>
</pollingDuplexHttpBinding>
</bindings>
<services>
<service name="DuplexService.OrderService"
behaviorConfiguration="DuplexService.OrderServiceBehavior">
<!-- Service Endpoints -->
<endpoint
address=""
binding="pollingDuplexHttpBinding"
bindingConfiguration="multipleMessagesPerPollPollingDuplexHttpBinding"
contract="DuplexService.IDuplexService">
</endpoint>
<endpoint
address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange"/>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior>
<!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
<serviceMetadata httpGetEnabled="true"/>
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
【问题讨论】:
标签: silverlight-4.0 wcf pollingduplexhttpbinding