每当我在白天或长时间第一次访问服务时,WCF会间歇性地抛出错误。
"服务器未提供有意义的回复;这可能是由合同不匹配,过早的会话关闭或内部服务器错误引起的。"
否则,它在每种情况下都能正常工作。我无法理解为什么会出现这种错误? P.s:我已经引用了许多线程并尝试了配置更改,检查了代理不匹配,但它们都没有为我工作。 请指导我,否则我必须在服务中添加重试选项
更新
客户端配置
<endpoint address="xxxxx" binding="basicHttpBinding" bindingConfiguration="Binding1" contract="IService" name="BasicEndPoint" />
<binding name="Binding1" maxReceivedMessageSize="99999999"
closeTimeout="00:05:00" openTimeout="00:05:00"
sendTimeout="00:05:00" receiveTimeout="00:05:00" >
<readerQuotas maxStringContentLength="99999999" />
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Ntlm"/>
<message clientCredentialType="UserName" algorithmSuite="Default"/>
</security>
</binding>
</basicHttpBinding>
</bindings>
<binding name="BasicEndPoint" closeTimeout="00:03:00" openTimeout="00:03:00"
receiveTimeout="00:10:00" sendTimeout="00:03:00" allowCookies="false"
bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="Transport">
<transport clientCredentialType="Windows" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
服务配置:
<binding name="Binding1" maxReceivedMessageSize="99999999">
<readerQuotas maxStringContentLength="99999999" />
<security mode="None">
</security>
</binding>
答案 0 :(得分:0)
Okey,在我使用WCF服务期间,我收到了很多奇怪的错误消息。我从中学到的是,他们并没有那么多意义。
当说,当你描述你的问题时,这听起来像我使用过的一个使用命名管道的WCF服务的一个问题。这是与激活有关的问题。然后我不得不在浏览器中刷新服务地址然后它工作正常。要解决这是一个许可问题。
另外一件让我错误消息的事情是,web.config中的命名空间和服务合同是正确的。
当我在Google上搜索您的错误消息时,似乎有些人认为这与服务中的枚举有关。我不认为这是你的问题,但也许...... WCF catches exception " The server did not provide a meaningful reply.."