Ich erhalte die folgende Ausnahme, wenn ich versuche, ein DTO über WCF-Dienste zu übergeben.WCF Maximale Lesetiefe Ausnahme
System.Xml.XmlException: The maximum read depth (32) has been exceeded because XML data being read has more levels of nesting than is allowed by the quota. This quota may be increased by changing the MaxDepth property on the XmlDictionaryReaderQuotas object used when creating the XML reader. Line 1, position 5230.
at System.Xml.XmlExceptionHelper.ThrowXmlException
Die app.config Bindung sieht wie folgt aus
<binding name="WSHttpBinding_IProjectWcfService" closeTimeout="00:10:00"
openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00"
bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard"
maxBufferPoolSize="524288" maxReceivedMessageSize="10240000" messageEncoding="Text"
textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
<readerQuotas maxDepth="200" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<reliableSession ordered="true" inactivityTimeout="00:10:00"
enabled="false" />
<security mode="Message">
<transport clientCredentialType="Windows" proxyCredentialType="None" realm="">
<extendedProtectionPolicy policyEnforcement="Never" />
</transport>
<message clientCredentialType="UserName" negotiateServiceCredential="true"
algorithmSuite="Default" establishSecurityContext="true" />
</security>
</binding>
Web.config Service Verhalten:
Und die DTO sieht wie folgt aus:
[Serializable]
[DataContract(IsReference=true)]
public class MyDto
{
Alle Hilfe würde so geschätzt werden wie ich bin zieh meine Haare damit aus.
Haben Sie sowohl die Konfiguration geändert auf Client und Server? Ich habe den Eindruck, dass ich diese Änderung bei beiden vorher abgleichen musste. –
Ziemlich ungewöhnlich, um so tief zu nisten. Sie könnten einen Zirkelverweis haben. Ich denke, wir müssen mehr von diesem DTO sehen; Ändern der maximalen Verschachtelung kann nur eine Pflaster-Lösung sein. – Aaronaught
Ich löste mein Problem, wie ich hier erklärte: http://stackoverflow.com/questions/5537794/error-while-deserializing-the-object-in-wcf – Adi