VS+SqlServe 在引用了webservice后刷新数据时提示:已超过传入消息(65536)的最大消息大小配额若要增加配额请使用相应绑定元素上 MaxReceivedMessageSize 属性

来源:互联网 发布:java会被淘汰吗 编辑:程序博客网 时间:2024/06/04 20:00


使用了VS建立了webservice 后,在VS项目中添加了引用,可是在今天从sqlserve中取数据时,

突然提示:已超过传入消息(65536)的最大消息大小配额若要增加配额请使用相应绑定元素上 MaxReceivedMessageSize 属性

这让我那叫一个郁闷啊,之前都是一直好用,为什么突然就不好用了?????????

后来根据提示分析和上网查资料分析,猜测可能是数据量问题,再去找如何绑定元素上 MaxReceivedMessageSize属性,经过了几个小时的处理终于找到解决方案了:

1、设置客户端的MaxReceivedMessageSize等属性值即可,代码设置如下:(这个我的是好用,但是不确定其他的好不好用,毕竟每个人出现问题时的情况都不一样,环境也不一样)

ServiceClientservice=newServiceClient();
(service.Endpoint.BindingasNetTcpBinding).MaxReceivedMessageSize=int.MaxValue;
(service.Endpoint.BindingasNetTcpBinding).MaxBufferPoolSize=int.MaxValue;
(service.Endpoint.BindingasNetTcpBinding).MaxBufferSize=int.MaxValue;

2、在配置项目文件中(app.config/web.config)设置如下代码:(绝对好用,如果这个不行再试第一个解决方案)
 <binding name="ServerName" 
                 maxBufferSize="2147483647" 
                 maxBufferPoolSize="2147483647" 
                 maxReceivedMessageSize="2147483647" />
      </basicHttpBinding>




1 0
原创粉丝点击