3

我有一个托管从 MSMQ 读取的 WCF 服务的 Windows 控制台应用程序。当消息大小达到 7k 到 8k 左右时,服务会读取它(即它从 Q 中消失),但不会调用相应的函数。没有抛出异常。有人对正在发生的事情或在哪里寻找解决此问题有任何线索吗?

4

1 回答 1

2

我追查了问题。在托管应用程序/服务的 .config 文件中,添加或更改默认为 8196 的 readerQuotas 元素的 maxStringContentLength 属性。

<bindings>
  <netMsmqBinding>
    <binding name="netMsmq">
      <security mode="None" />
      <readerQuotas
        maxDepth="32"
        maxStringContentLength="8196"
        maxArrayLength="16384"
        maxBytesPerRead="4096"
        maxNameTableCharCount="16384"
        />
    </binding>
  </netMsmqBinding>
</bindings>
于 2008-11-19T22:17:28.827 回答