繁体   English   中英

Wcf忽略MaxItemsInObjectGraph值

[英]Wcf ignore MaxItemsInObjectGraph value

我们的WCF服务有以下例外:

在对象图中可以序列化或反序列化的最大项数是'32767'。 更改对象图或增加MaxItemsInObjectGraph配额。

我们将配置更改为:

  <behavior name="large">
      <dataContractSerializer maxItemsInObjectGraph="214783647"/>
      <serviceMetadata httpGetEnabled="true"/>
      <serviceDebug includeExceptionDetailInFaults="true"/>
  </behavior>

但没有变化。

在调试模式下,当服务主机打开时,DataContractSerializer的值为214783647,并且仍然会发生异常。

以程序方式改变价值并没有帮助。

在服务上添加ServiceBehavior的属性没有帮助。

这里更改machine.config - 没有帮助。

有任何想法吗? 谢谢。

您可能想要确认错误不是来自事务的另一方(客户端)。

验证的一种方法是配置和启用WCF诊断事件跟踪和消息记录,然后重新运行测试事务并查看服务跟踪日志文件。 以下链接演示了如何启用跟踪和消息日志记录。

http://msdn.microsoft.com/en-us/library/ms751526.aspx

感谢我的大学,通过删除ReferencePreservingDataContractFormat属性解决了问题,我们认为这是因为该属性创建了自己的DataContractSerializer,忽略了配置。

更多细节

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM