"Das maximale Zeichenfolgeninhaltslängenkontingent (8192) wurde beim Lesen von XML-Daten überschritten" -Fehler beim Senden der XML-Zeichenfolge an WCF
Arbeite ich mit einem .NET, C# - Anwendung, die beabsichtigt, zu senden eine lange XML-Zeichenfolge an einen WCF-Service-Methode für den weiteren Betrieb. Wenn meine Bewerbung zu senden versucht die XML string der WCF-Dienst in der runtime bekomme ich eine Fehlermeldung :
"The formatter threw an exception while trying to deserialize the message: There was an error while trying to deserialize parameter http://tempuri.org/:strProdUserDataXML. The InnerException message was 'There was an error deserializing the object of type System.String. The maximum string content length quota (8192) has been exceeded while reading XML data. This quota may be increased by changing the MaxStringContentLength property on the XmlDictionaryReaderQuotas object used when creating the XML reader. Line 131, position 57.'. Please see InnerException for more details."
Meine Bewerbung web-Seite.config habe ich geschrieben "verbindlich" & "Endpunkt":
<binding name="EndPointHTTPGenericPortal" closeTimeout="01:00:00" openTimeout="01:00:00" receiveTimeout="01:00:00" sendTimeout="01:00:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferSize="2147483647" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
<security mode="None">
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
<endpoint address="http://192.168.140.40/WcfGenericPortal_Service/Service1.svc" binding="basicHttpBinding" bindingConfiguration="EndPointHTTPGenericPortal" contract="IService1" name="EndPointHTTPGenericPortal" behaviorConfiguration="Graph" />
Wenn jeder Körper kann mir helfen, wie dieses Problem zu lösen Fehler, ich werde sehr viel verpflichtet.
Vielen Dank an alle im Voraus.
InformationsquelleAutor der Frage Pinaki Karuri | 2013-03-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier ist ein Artikel auf der MSDN-Website über Leser-Quoten.
Scheint es, dass einer der Leser die Quoten auf Ihrem server-Seite überschritten wird.
Insbesondere maxStringContentLength überschritten wird. Der Standardwert ist 8192 Zeichen für maxStringContentLengthdie wie beschrieben die Fehlermeldung überschritten wird.
Aber es ist vielleicht nicht der beste Ansatz, um bump nur alle Werte auf den maximalen 2147483647 wie einige andere vorgeschlagen haben.
Wie geschrieben in der MSDN-Dokumentation, die ich verlinkte:
Gepaart mit der Tatsache, dass Sie derzeit haben Security-Modus eingestellt Keine - Sie können sich für die Einstellung einige Probleme.
InformationsquelleAutor der Antwort Derek W
Bekam ich diese Fehlermeldung und lösen, indem diese - MaxItemsInObjectGraph-Eigenschaft für den Dienst in der client-und der server-Konfiguration .
server-Seite
Client-Seite
und vergessen Sie nicht, dieses Verhalten zu-Endpunkt-Einstellung behaviorconfiguration="endpointbehaviour"
InformationsquelleAutor der Antwort Lingaraj
Pinaki Karuri,
Quoten Längen, hängt nicht nur von der client-Konfiguration - auch abhängig von der server ist. Bitte posten Sie Ihre WCF-server-web.config so können wir etwas Licht auf das problem. Es gibt eine Wahrscheinlichkeit haben Sie bereits die Quotierung gibt es für 8192so dass der Schnellste Weg für Sie wäre, zu finden und seinen Wert zu erhöhen.
Update
Soweit ich sehen kann, Sie sind fehlende 'readerQuotas' Knotens aus Ihrer server-web.config, so MaxStringContentLength hat seinen Wert default (8192). Entnehmen Sie bitte diesem link für weitere Informationen: http://msdn.microsoft.com/en-us/library/system.xml.xmldictionaryreaderquotas.maxstringcontentlength.aspx
InformationsquelleAutor der Antwort Piotr Justyna
Versuchen, die folgenden Dinge in der Bindung.
Es hat mein problem gelöst. Weitere Referenz finden folgende link http://blogfornet.com/2013/08/the-maximum-string-content-length-quota-8192-has-been-exceeded-while-reading-xml-data/
InformationsquelleAutor der Antwort Rajkiran Sanchaniya
Client-Seite Verbindlich
Service Config-Datei:
InformationsquelleAutor der Antwort Ravi Kumar Kamboj
Überprüfen Sie, dass Ihre Ziel-Framework für den client ist die gleiche wie die des service. Ich hatte dieses Problem und versucht, alle der oben genannten fixes, aber das hat nicht funktioniert. Geprüft Eigenschaften und überprüft das Ziel-Framework und verändert es.
InformationsquelleAutor der Antwort Luigi