Je dispose d'un service WCF qui utilise WSHTTPTTPLINDING. La configuration du serveur est la suivante:
<bindings> <wsHttpBinding> <binding name="wsHttpBinding" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647"> <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" /> <security mode="None"> <transport clientCredentialType="Windows" proxyCredentialType="None" realm="" /> <message clientCredentialType="Windows" negotiateServiceCredential="true" algorithmSuite="Default" establishSecurityContext="true" /> </security> </binding> </wsHttpBinding> </bindings>
4 Réponses :
Essayez ce qui suit:
Dans le répertoire d'installation de votre Visual Studio où se trouve Devenv.exe (par exemple, C: \ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ Ide) Ajouter cette section au devenv.exe. Cofig p> dans l'app.config de votre service WCF ajoutez la même liaison: p> p> ajoutez enfin le point de terminaison MEX suivant dans votre étiquette de service: P > <services>
<service behaviorConfiguration="MyServiceBehavior"
name="MyService.MyService">
<endpoint address="" binding="wsHttpBinding" contract="MyService.IMyService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="customBinding" contract="IMetadataExchange" bindingName="testBinding" bindingConfiguration="largeServiceBinding" name="http"/>
<host>
<baseAddresses>
<add baseAddress="http://localhost:8731/Design_Time_Addresses/MyService/MyService/" />
</baseAddresses>
</host>
</service>
</services>
Merci pour la réponse tentera de vous faire connaître le résultat.
Cela a fonctionné merci. Je devais changer dans le client les paramètres des points d'extrémité de service après avoir fonctionné. Merci!!!!
Cela a également fonctionné pour moi, mais il n'était pas nécessaire d'ajouter une nouvelle liaison, je viens de mettre à jour le Readerquotas code> avec ce qui précède.
Une chose à reconnaître est que le message fait référence aux quotas de lecteur de SvCuttille et non au service! SvCuttille a une limite sur la quantité de métadonnées qu'il peut lire. Cette limite peut être modifiée avec un fichier de configuration. La solution consiste à créer un fichier de configuration pour SvCutil et placez-le dans le même dossier que l'outil. La prochaine fois que vous exécutez SVCuttil, les valeurs de fichier de configuration seront prises en compte. P>
http://geekswithblogs.net/claquoscura/archive/2007 /08/20/20/114806.aspx p>
dans votre app.config ou dll.config sur le client ajoutez: Et vous y allez!
C'est l'une des choses vraiment gênantes avec WCF et aussi souvent que Google vous rapporte beaucoup de BS. Des tonnes de temps gaspillées avec ceci. P> p>
Je sais que cela a été un moment, mais j'ai eu le même problème et j'ai trouvé une autre solution (plus simple) dans codeProject
dans la solution donnée là que les valeurs sont définies dans le code plutôt que le fichier .config. p> Cependant, j'ai changé les valeurs des valeurs correspondantes dans le fichier .config (dans les deux J'espère que cela aidera quelqu'un :) p> p >
< ReaderQuotas> code> sections) et a résolu le problème (plutôt que d'ajouter des fixations personnalisées): p>