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

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

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

复制代码
<system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding name="BasicHttpBinding_ISystemDataService"
                 maxBufferSize="10485760" maxReceivedMessageSize="10485760" />
        <binding name="BasicHttpBinding_ITestService" />
      </basicHttpBinding>
    </bindings>
</system.serviceModel>
复制代码

主要是配置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

posted @   不是豆豆  阅读(1449)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
友情链接:迷途


点击右上角即可分享
微信分享提示