WCF The remote server returned an error: (400) Bad Request

如果是小数据量调用WCF服务不会出现,但如果大量数据时会出现这个错误。花了几个小时的时间才知道WCF服务层也需要bindingConfiguration属性,修改服务层的web.config
web.config
==========
<services>
<service name="DocCube.BusinessLogic.DocumentManager"
behaviorConfiguration="HttpGetBehavior">
<endpoint binding="wsHttpBinding" bindingConfiguration="wsHttp"
contract="DocCube.Interfaces.IDocumentManager"
address=""/>
</service>
</services>

注意: 手动增加 "bindingConfiguration" 属性,VS平台不会自动生成这个属性,与bindingConfiguration关联的配置如下:

<bindings>
<wsHttpBinding>
<binding name="wsHttp" maxReceivedMessageSize ="9999999"
messageEncoding="Mtom" maxBufferPoolSize="9999999" >
<readerQuotas maxDepth="9999999"
maxArrayLength="9999999" maxBytesPerRead="9999999"
maxNameTableCharCount="9999999" maxStringContentLength="9999999"/>
<security mode="None" />
</binding>
</wsHttpBinding>
</bindings>

然后,把客户端的App.config文件删除,重新获取服务层的服务引用,需要注意到是:客户端和服务端引用的绑定协议binding都需要相同,比如客户端的app.config引用的binding,maxReceivedMessageSize 值大小等于9999999,那么服务层也要有相同的配置,这个值也是9999999。

 

转载于:https://www.cnblogs.com/Kingly/archive/2009/05/12/1455046.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值