2009-04-30 7 views
1

reçois message d'erreur d'appeler le service WCF:Pourquoi le formateur WCF lève une exception?

« Le formatter a lancé une exception tout en essayant de désérialiser le message. Il y avait une erreur en essayant de désérialiser paramètre http://tempuri.org/:fieldText Le message InnerException était « Il y avait un erreur désérialisant l'objet de type System.String [] .Le quota de longueur de contenu de chaîne maximale (8192) a été dépassé lors de la lecture de données XML.Ce quota peut être augmenté en modifiant la propriété MaxStringContentLength sur l'objet XmlDictionaryReaderQuotas utilisé lors de la création du lecteur XML. Ligne 1, position 10889. Veuillez voir InnerException pour plus de détails. "

section WCF dans mon web.config ressemble à ceci:

<basicHttpBinding> 
     <binding name="BasicHttpBinding_IMySvc" maxReceivedMessageSize="2147483647" sendTimeout="00:05:00" 
       messageEncoding="Text" textEncoding="utf-8" > 
      <readerQuotas maxStringContentLength="2147483647" maxArrayLength="163840000"/> 
     </binding> 
</basicHttpBinding> 

En outre, la taille de mon message d'entrée est: 15869 caractères.

Qu'est-ce qui me manque ici?

+0

Ajoutez votre configuration de point de terminaison pour plus de clarté. –

+0

Eh oui –

Répondre

3

Assurez-vous que votre point de terminaison utilise réellement la liaison.

<endpoint address="" binding="basicHttpBinding" contract="IMySvc" bindingConfiguration="BasicHttpBinding_IMySvc"> 
+0

- juste déclarant que cela n'aide pas vraiment - il doit être référencé, aussi :-) –

+0

ofcourse il le fait ...! sinon il aurait levé une exception: Impossible de trouver l'élément de point final par défaut qui référence le contrat 'MySvc.IMySvc' dans la section de configuration du client ServiceModel. Cela peut être dû au fait qu'aucun fichier de configuration n'a été trouvé pour votre application ou qu'aucun élément de point de terminaison correspondant à ce contrat n'a pu être trouvé dans l'élément client. –

Questions connexes