J'ai le problème avec l'erreur suivante: «Le quota de taille maximale des messages pour les messages entrants (65536) a été dépassé d'augmenter le quota, utilisez la propriété MaxReceivedMessageSize sur l'élément de liaison approprié. »Pourquoi mon service WCF ne charge-t-il pas ma config Binding?
donc Je l'ai fait quelques recherches et trouvé que je devais augmenter la mémoire tampon et la taille du message, voici mon WCF fichier de configuration de service:
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding name="default" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647"/>
</wsHttpBinding>
</bindings>
<services>
<service name="WCF.Service.Service">
<endpoint address="ws" name="ws" bindingConfiguration="default" binding="wsHttpBinding" contract="WCF.Service.Contracts.IService" />
<endpoint address="mex" binding="mexHttpBinding" name="mex" contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior>
<!-- To avoid disclosing metadata information,
set the value below to false and remove the metadata endpoint above before deployment -->
<serviceMetadata httpGetEnabled="True" />
<!-- To receive exception details in faults for debugging purposes,
set the value below to true. Set to false before deployment
to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="True" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
Quand je lance le service dans le client de test WCF et regarde le fichier config client généré il n'a pas ont ma liaison:
<configuration>
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding name="ws" closeTimeout="00:01:00" openTimeout="00:01:00"
receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false"
transactionFlow="false" hostNameComparisonMode="StrongWildcard"
maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true"
allowCookies="false">
<readerQuotas maxDepth="32" 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="" />
<message clientCredentialType="Windows" negotiateServiceCredential="true"
algorithmSuite="Default" />
</security>
</binding>
</wsHttpBinding>
</bindings>
<client>
<endpoint address="http://localhost:37444/Service.svc/ws" binding="wsHttpBinding"
bindingConfiguration="ws" contract="IService" name="ws">
<identity>
<userPrincipalName value="[email protected]" />
</identity>
</endpoint>
</client>
</system.serviceModel>
Je suis perdu comme pourquoi ma configuration de liaison est PAS s'appliqué !? Le client de test WCF est configuré pour toujours régénérer la configuration. J'ai également essayé de mettre à jour la référence de service dans une application frontale consommatrice, mais cela n'obtient pas non plus pas la configuration de liaison mise à jour. Toutes les suggestions seraient grandement appréciées. Merci!
Il me semble que votre client obtient votre liaison ... –
Mais il n'a pas mes plus grandes valeurs maxBufferPoolSize et maxReceivedMessageSize ... – MisterIsaak