.net wcf duplex large message对具有ReliableSessions的大型邮件没有提供有意义的回复
我正在使用NetTCP双工绑定将文档作为字节[]从服务器发送到客户端。 当这个字节[]相当大(比如10Meg)时,服务器通过给出.net wcf duplex large message对具有ReliableSessions的大型邮件没有提供有意义的回复,.net,wcf,wcf-binding,nettcpbinding,duplex,.net,Wcf,Wcf Binding,Nettcpbinding,Duplex,我正在使用NetTCP双工绑定将文档作为字节[]从服务器发送到客户端。 当这个字节[]相当大(比如10Meg)时,服务器通过给出 服务器没有提供有意义的回复;这可能是由于契约不匹配、会话过早关闭或内部服务器错误造成的。 较小的消息(例如1MB)可以很好地工作。 这是my web.config中的绑定 <bindings> <netTcpBinding> <binding name="InsecureTcp" receiveTimeout="0:10:0
服务器没有提供有意义的回复;这可能是由于契约不匹配、会话过早关闭或内部服务器错误造成的。
较小的消息(例如1MB)可以很好地工作。
这是my web.config中的绑定
<bindings>
<netTcpBinding>
<binding name="InsecureTcp" receiveTimeout="0:10:00" sendTimeout="0:05:00" portSharingEnabled="true" openTimeout="0:0:02" maxReceivedMessageSize="2147483647" maxBufferPoolSize="2147483647" maxBufferSize="2147483647">
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647"/>
<security mode="None"/>
<reliableSession enabled="true" ordered="true" inactivityTimeout="0:00:05"/>
</binding>
</netTcpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior name="">
<serviceMetadata httpGetEnabled="true" />
<dataContractSerializer maxItemsInObjectGraph="2147483647" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
更新1
看起来可靠会话通过怀疑不活动而终止连接。将文档推送到客户机需要5秒钟以上的时间,因此(我想)客户机会出现通道故障。
但是:我在5秒钟内就有了这个inactivityTimeout,以便在连接断开时几乎立即得到通知,这样我就可以实例化到服务器的新连接
看起来这两个要求是相互冲突的