C# winform 调用webService 格式化程序尝试对消息反序列化时引发异常: 读取 XML 数据时,超出最大字符串内容长度配额 (8192)。

错误信息:格式化程序尝试对消息反序列化时引发异常: 尝试对参数 http://ws.xzsoft.com 进行反序列化时出错: getWagonResponse。InnerException 消息是“反序列化对象 属于类型 CallWeb.ServiceReference1.getWagonResponseBody 时出现错误。读取 XML 数据时,超出最大字符串内容长度配额 (8192)。通过更改在创建 XML 读取器时所使用的 XmlDictionaryReaderQuotas 对象的 MaxStringContentLength 属性,可增加此配额。 行 1,位置 18355。”。有关详细信息,请参见 InnerException。

 

 

解决方案:  把 <bindings></bindings> 节点的内容(也就是红色字体部分)添加进去,蓝色字体是名称一定要改成自己原来的名称。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <system.serviceModel>
      <bindings>
        <basicHttpBinding>
          <binding name="
ISaveArriveSOAP11Binding" closeTimeout="00:01:00"
              openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
              allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
              maxBufferPoolSize="524288" maxBufferSize="524288" maxReceivedMessageSize="524288"
              textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true"
              messageEncoding="Text">
            <readerQuotas maxDepth="32" maxStringContentLength="8192000" maxArrayLength="16384000"
                maxBytesPerRead="4096000" maxNameTableCharCount="16384000" />
            <security mode="None">
              <transport clientCredentialType="None" proxyCredentialType="None"
                  realm="" />
              <message clientCredentialType="UserName" algorithmSuite="Default" />
            </security>
          </binding>
          <binding name="ISaveSaleRdrecordSOAP11Binding" closeTimeout="00:01:00"
              openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
              allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
              maxBufferPoolSize="524288" maxBufferSize="524288" maxReceivedMessageSize="524288"
              textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true"
              messageEncoding="Text">
            <readerQuotas maxDepth="32" maxStringContentLength="8192000" maxArrayLength="16384000"
                maxBytesPerRead="4096000" maxNameTableCharCount="16384000" />
            <security mode="None">
              <transport clientCredentialType="None" proxyCredentialType="None"
                  realm="" />
              <message clientCredentialType="UserName" algorithmSuite="Default" />
            </security>
          </binding>
          <binding name="WebServiceSoap" closeTimeout="00:01:00"
              openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
              allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
              maxBufferPoolSize="524288" maxBufferSize="524288" maxReceivedMessageSize="524288"
              textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true"
              messageEncoding="Text">
            <readerQuotas maxDepth="32" maxStringContentLength="2147483647" maxArrayLength="2147483647"
                maxBytesPerRead="4096000" maxNameTableCharCount="2147483647" />
            <security mode="None">
              <transport clientCredentialType="None" proxyCredentialType="None"
                  realm="" />
              <message clientCredentialType="UserName" algorithmSuite="Default" />
            </security>
          </binding>
        </basicHttpBinding>
      </bindings>

      <client>
            <endpoint address="http://192.168.2.114:8895/WebService.asmx"
                binding="basicHttpBinding" bindingConfiguration="WebServiceSoap"
                contract="K3Service.WebServiceSoap" name="WebServiceSoap" />
        </client>
    </system.serviceModel>
</configuration>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值