web-dev-qa-db-fra.com

Erreur: impossible d'obtenir les métadonnées du service WCF

J'ai un service WCF en cours d'exécution que je peux appeler en utilisant javascript. Cependant, je veux l'invoquer à l'aide du client de test WCF et avoir des difficultés à le faire. On me dit que je dois m'assurer d'avoir activé la publication de métadonnées à l'adresse spécifiée. Après avoir lu la documentation, je ne vois pas ce que je voulais faire, c’est ma configuration:

<system.serviceModel>
   <services>
       <service name="CommentSessionIDWCFService" 
                behaviorConfiguration="CommentSessionIDBehavior">
          <endpoint 
              address="" 
              behaviorConfiguration="CountryProvinceBehavior"
              binding="webHttpBinding" 
              contract="ICommentSessionIDWCFService" />
       </service>
   </services>
   <behaviors>
      <serviceBehaviors>
         <behavior name="CommentSessionIDBehavior">
            <serviceMetadata httpGetEnabled="true"/>
            <serviceDebug includeExceptionDetailInFaults="true"/>
         </behavior>
      </serviceBehaviors>
      <endpointBehaviors>
          <behavior name="CountryProvinceBehavior">
              <webHttp/>
          </behavior>
      </endpointBehaviors>
   </behaviors>
</system.serviceModel>

J'ai lu d'autres articles mais je ne vois pas ce qu'il faut peupler et je continue à avoir des erreurs. Q's ..

1) Ai-je raison de dire que je dois configurer un nouveau service complet dans ma configuration pour afficher les métadonnées?

2) Qu'est-ce que j'ajoute à la configuration pour rendre ces métadonnées publiées afin que je puisse appeler avec le client?

34
Exitos

Vous avez besoin d’un point de terminaison de métadonnées pour votre service, voici un exemple.

<services>
    <service name="MyService" behaviorConfiguration="MEX">
    <endpoint
        address="http://localhost:8000/MEX"
        binding="mexHttpBinding"
        contract="IMetadataExchange"
    />
    </service>
</services>

<behaviors>
    <serviceBehaviors>
        <behavior name="MEX">
            <serviceMetadata/>
        </behavior>
    </serviceBehaviors>
</behaviors>
46
Menahem

J'ai eu un problème similaire après avoir modifié le fichier de configuration dans TestClient avec un clic droit et "éditer avec svceditor" pour augmenter ma taille maximale. Si quelqu'un a également commis cette erreur, essayez de reconstruire votre projet.

0
7gegenTheben