[英]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診斷事件跟蹤和消息記錄,然后重新運行測試事務並查看服務跟蹤日志文件。 以下鏈接演示了如何啟用跟蹤和消息日志記錄。
感謝我的大學,通過刪除ReferencePreservingDataContractFormat屬性解決了問題,我們認為這是因為該屬性創建了自己的DataContractSerializer,忽略了配置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.