J'ai vu que ce problème a enregistré un million de fois, mais aucune des solutions n'a travaillé pour moi ... donc ici, je vais:
Lorsque vous appelez un service WCF, je reçois l'erreur suivante: P>
Le formateur a jeté une exception tout en essayant de désérialiser le Message: Il y avait une erreur lors de l'essai de désérialiser le paramètre http: //blanketimportService.servicecontractS/2011/06: demande . Les Le message InnerException était «Il y avait une erreur désériorialisant le objet de type blancheimport.blanktetimorTequest. Le tableau maximum Du quota de longueur (16384) a été dépassé lors de la lecture de données XML. Cette quota peut être augmenté en changeant la propriété MaxAryLength sur le Objet XMLDictionaryReaderQuoTas utilisée lors de la création du lecteur XML. Ligne 1, position 44440. '. S'il vous plaît voir Infantaxception pour plus de détails. P> BlockQuote>
J'ai modifié le Voici le serveur config: p> ReaderQuotas Code> sur le serveur client et appliqué la balise de configuration de la liaison. p> <bindings>
<basicHttpBinding>
<binding name="BilagImportBinding" maxBufferSize="2147483647"
maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"
maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://localhost/BlanketImport/BlanketService.svc"
binding="basicHttpBinding" bindingConfiguration="BilagImportBinding" contract="BlanketServiceReference.IBlanketService"
name="BasicHttpBinding_IBlanketService" />
</client>
3 Réponses :
trouvé la solution ... mais toujours très étrange! p>
Si je supprimais l'attribut Nom de mon étiquette de liaison et de l'attribut BindingConfiguration de ma balise de terminaison, tout fonctionne. Cela signifie que la configuration BasichttpLinding est la configuration par défaut pour tous les points d'extrémité BasichttpLinding P>
Super - si vous marquez votre propre réponse comme solution, vous obtiendrez un badge. :)
J'ai eu le même problème tout en essayant de télécharger des fichiers à l'aide de la WCF à l'aide d'une configuration de liaison nommée. Cela concerne les modifications apportées dans la configuration WCF 4.0 et «simplifiée» (voir MSDN < / a>) p>
FYI: J'ai tout essayé pour résoudre ce problème; Le paramètre au service était un tableau d'octets, nous avons donc éliminé le flux et utilisé un flux, essayé de changer de mode tamponnier versus et évidemment les options de configuration de 1,5 million pour modifier des tailles qui n'ont jamais été prise en charge avec une configuration nommée. P>
Très étrange en effet, mais travaillant avec votre suggestion. P>
J'ai eu un problème similaire où la liaison nommée n'était pas utilisée par le point final. Mon problème était une faute de frappe dans le nom de service. Comme le dit Livewire, la configuration simplifiée WCF 4 crée automatiquement un point d'extrémité et mon point final défini ne l'écrasait pas. P>
Le nom de service est-il juste "Blanketimport", ou est-ce sous un espace de noms (tel que blanchetimport.blanketimport)? La valeur de l'attribut "nom" de l'élément code> doit être le nom totalement qualifié-nom i> du service (nom d'espace de noms + nom de type), sinon wcf won ' t le trouver.
Il est 2015 et les paramètres de configuration de la WCF continuent d'être une énigme à la plupart d'entre nous.