2010-11-11 3 views
1

Je travaille avec un service existant et je n'arrive pas à déterminer pourquoi il n'utilise pas de configuration personnalisée.Impossible de remplacer la configuration WCF par défaut

Ma classe de service ressemble à ceci:

[ServiceBehavior(Name = "MagicService",Namespace = Namespaces.NS_Magic_ADMIN_SERVICE, ConfigurationName = "MagicServiceConfiguration")] 
public class MagicService : IMagicService 

config service:

<service name="MagicServiceConfiguration" behaviorConfiguration="MagicServiceBehavior"> 
    <endpoint address="" 
     name="httpAdminServiceSEP" 
     binding="basicHttpBinding" 
     bindingName="basicMemberBinding" 
     bindingNamespace="http://magic-service.me.com/admin/2010/04/" 
     contract="Me.Manager.Magic.Contracts.Behavior.IMagicService"> 
    </endpoint> 
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/> 
    </service> 

Reliure:

<basicHttpBinding> 
    <binding name="basicMemberBinding" 

      receiveTimeout="00:10:00" 
      sendTimeout="00:10:00" 
      openTimeout="00:10:00" 
      closeTimeout="00:10:00" 
      maxReceivedMessageSize="2147483647" 
      maxBufferSize="2147483647" 
      maxBufferPoolSize="2147483647"> 
    </binding> 
    </basicHttpBinding> 

Je continue à obtenir le bon vieux: « Il y avait une désérialisation d'erreur 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 XML Les données. 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 81, la position 80"

Chaque fois que j'ajouter une référence de service, il ajoute automatiquement utilise la valeur par défaut 8196 longueurs.

Si je retire rien de configuration du service change. Jette toujours à l'exception de la longueur.

Répondre

1

Vous pour référencer vos paramètres de liaison en utilisant l'attribut bindingConfiguration= sur votre <endpoint> - pas bindingName= un.

<service name="MagicServiceConfiguration" behaviorConfiguration="MagicServiceBehavior"> 
    <endpoint 
    name="httpAdminServiceSEP" 
    address="" 
    binding="basicHttpBinding" 
    bindingConfiguration="basicMemberBinding" *** here use bindingConfiguration!! 
    bindingNamespace="http://magic-service.me.com/admin/2010/04/" 
    contract="Me.Manager.Magic.Contracts.Behavior.IMagicService"> 
    </endpoint> 
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/> 
</service> 
+0

ce fut cette Il y avait une autre question sur la ligne que je devais corriger ainsi Merci.. – jfar

Questions connexes