“La durée maximale de la chaîne de la longueur du contenu de quota (8192) a été dépassé lors de la lecture de données XML” erreur lors de l'envoi de chaîne XML pour WCF

Je travaille avec un .NET, C# une application qui a l'intention d'envoyer une longue chaîne XML pour un Service WCF méthode pour la poursuite de l'opération. Quand mon application essaie d'envoyer la chaîne XML de Service WCF dans l'exécution, j'obtiens un message d'erreur :

"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."

Mon côté application web.config j'ai écrit la "liaison" & "endpoint" comme:

<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" />

Si tout corps peut m'aider sur la façon de résoudre cette erreur, je vais être très bien tenu.
Merci à tous par avance.

  • Et qu'est-ce que de votre côté serveur web de config?
  • Quelle est la valeur maximale de la chaîne de la longueur du contenu de quota sur le serveur?
  • Voici une Q&A stackoverflow.com/questions/6917061/...
  • Salut Voo & Jocke, merci pour votre réponse. côté serveur config est: "<binding name="EndPointHTTPGenericPortal" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" openTimeout="00:30:00" closeTimeout="00:30:00" sendTimeout="00:30:00" receiveTimeout="00:10:00"> <mode de sécurité="None"/> </liaison>'
  • où est votre "readerQuotas" nœud?
  • Beaucoup ici sont juste aller avec la force brute de la solution qui consiste à définir l'ensemble de la config des valeurs au maximum de 2 GO (2 147 483 647 octets), mais attention, cela peut vous rendre vulnérable à des attaques par déni de service, etc. Il va travailler, mais il ya une raison pourquoi les valeurs par défaut sont définies de manière faible en comparaison.
  • En ce qui concerne mon commentaire précédent - désolé, certains sont de caractère, tableau de valeurs de longueur, et le nœud de valeur de profondeur - pas seulement les valeurs d'octets dans le lecteur de quota paramètres de configuration.
  • J'ai le même problème. sauf que dans mon cas, cela se produira que sur 1 des 4 dev ordinateur Dell, le fabricant de l'ordinateur qui sont les même modèles. nous avons tous utiliser les mêmes visual studio et 1 seul gars, il se bloque lorsque nous courons tous à la même solution que j'ai faite. c'est sur le SVN, donc même code. tous les CPU.
  • veuillez cocher la accepté de répondre à
  • double possible de le maximum de La chaîne de la longueur du contenu de quota (8192) a été dépassé lors de la lecture de données XML