Comment : utiliser Svcutil.exe pour télécharger des documents de métadonnées
Svcutil.exe vous permet de télécharger des métadonnées à partir de systèmes en cours d'exécution et de les enregistrer dans des fichiers locaux. Pour les schémas d'URL HTTP et HTTPS, Svcutil.exe tente de récupérer les métadonnées à l'aide de WS-MetadataExchange et du processus Découverte d'un service Web XML (page pouvant être en anglais). Pour tous les autres schémas d'URL, Svcutil.exe utilise uniquement WS-MetadataExchange.
Par défaut, Svcutil.exe utilise les liaisons définies dans la classe MetadataExchangeBindings. Pour configurer la liaison utilisée pour WS-MetadataExchange, vous devez définir un point de terminaison client dans le fichier de configuration de Svcutil.exe (svcutil.exe.config) qui utilise le contrat IMetadataExchange et qui porte le même nom que le schéma d'URI (Uniform Resource Identifier) de l'adresse du point de terminaison des métadonnées.
Attention : |
---|
Lors de l'exécution de Svcutil.exe pour obtenir des métadonnées pour un service qui expose deux contrats de service différents contenant chacun une opération du même nom, Svcutil.exe affiche une erreur indiquant « Impossible d'obtenir les métadonnées à partir de .... ». Par exemple, vous avez un service qui expose un contrat de service appelé ICarService avec une opération Get(Voiture c) et le même service expose un contrat de service appelé IBookService avec une opération Get(Livre b). Pour remédier à ce problème, effectuez l'une des opérations suivantes : |
Pour télécharger les métadonnées à l'aide de Svcutil.exe
Localisez l'outil Svcutil.exe à l'emplacement suivant :
C:\Program Files\Microsoft SDKs\Windows\v1.0.\bin
À l'invite de commandes, lancez l'outil en utilisant le format suivant.
svcutil.exe /t:metadata <url>* | <epr>
Vous devez spécifier l'option /t:metadata pour télécharger les métadonnées. Sinon, la configuration et le code client seront générés.
L'argument <url> spécifie l'URL à un point de terminaison de service qui fournit les métadonnées ou à un document de métadonnées hébergé en ligne. L'argument <epr> spécifie le chemin d'accès à un fichier XML contenant un EndpointAddress WS-Addressing pour un point de terminaison de service qui prend en charge WS-MetadataExchange.
Pour obtenir davantage d'options sur l'utilisation de cet outil dans le cadre du téléchargement de métadonnées, consultez Outil Service Model Metadata Tool (Svcutil.exe).
Exemple
La commande suivante télécharge des documents de métadonnées à partir d'un service en cours d'exécution.
svcutil /t:metadata http://service/metadataEndpoint