WCF传输过大的数据导致失败的解决办法

WCF传输过大的数据导致失败的解决办法

 

WCF服务默认是不配置数据传输的限制大小的,那么默认的大小好像是65535B,这才65KB左右,如果希望传输更大一些的数据呢,就需要手动指定一下缓冲区的大小了。

主要是为binding设置几个最大值属性就可以了,包括服务端和客户端均进行设置,不过配置都是一样的。

WCF传输过大的数据导致失败的解决办法
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBinding_ISystemDataService"
maxBufferSize="10485760" maxReceivedMessageSize="10485760" />
<binding name="BasicHttpBinding_ITestService" />
</basicHttpBinding>
</bindings>
</system.serviceModel>
WCF传输过大的数据导致失败的解决办法

主要是配置maxBufferSize和maxReceivedMessageSize两个大小,貌似在某种情况下,两个值最好相同,这里就先不深究了,把它俩配上就好了,这里设置了10485760,单位是字节(Byte),也就是10MB。这样大容量的消息就可以发送了。

更多:

http://msdn.microsoft.com/zh-cn/library/system.servicemodel.basichttpbinding.maxbuffersize.aspx

http://msdn.microsoft.com/zh-cn/library/system.servicemodel.basichttpbinding.maxreceivedmessagesize.aspx

上一篇:nginx+tomcat单个域名及多个域名配置


下一篇:Entity Framework 6 Recipes 2nd Edition(9-7)译->在WCF服务中序列化代理