1

我收到此错误消息...

"读取时已超出最大字符串内容长度配额 (8192)
XML 数据。可以通过更改 MaxStringContentLength 来增加此配额
创建 XML 时使用的 XmlDictionaryReaderQuotas 对象的属性
读者”

...在我的一个使用 WCF Web 服务的编排中(堆栈跟踪表明接收形状是问题所在)。响应可能非常大。

查看带有此错误消息的其他一些问题,解决方案是更改配置文件中的 WCF 绑定设置。但是,当我使用 BizTalk 时,我找不到这些配置设置。它们似乎没有在任何地方生成,我应该尝试将它们添加到 BTSNTSVc.exe.config 吗?

欢迎任何建议。

4

2 回答 2

3

您是否可以控制服务器端代码?如果是这样,请更改那里的配置并重新生成服务引用。应该看起来像maxStringContentLength="2147483647"

<bindings>
  <wsHttpBinding>
    <binding name="newHTTPBinding" 
             maxBufferPoolSize="2147483647"  
             maxReceivedMessageSize="2147483647">
      <readerQuotas maxDepth="32" 
                    maxStringContentLength="2147483647"
                    maxArrayLength="16384" 
                    maxBytesPerRead="4096" 
                    maxNameTableCharCount="16384" />
    <binding/>
  <wsHttpBinding>
<bindings>
于 2010-04-16T14:41:36.660 回答
1

我通过在 basicHTTPBinding 下添加默认绑定解决了这个问题,就像在http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/d5b7ac03-70f8-4366-b055-c177c61f4dec/

对客户进行了必要的修改。

于 2011-01-11T14:41:38.640 回答