Partager via


Récupération de métadonnées

Le processus de récupération de métadonnées consiste à demander et à récupérer les métadonnées d'un point de terminaison de métadonnées, tel que WS-MetadataExchange (MEX) ou HTTP/GET.

Récupération de métadonnées à partir de la ligne de commande à l'aide de Svcutil.exe

Vous pouvez récupérer des métadonnées de service à l'aide d'un échange WS-MetadataExchange ou de requêtes HTTP/GET en utilisant l'outil Outil Service Model Metadata Tool (Svcutil.exe) et en passant le commutateur /target:metadata et une adresse. Svcutil.exe télécharge les métadonnées à l'adresse spécifiée et enregistre le fichier sur disque. Svcutil.exe utilise une instance System.ServiceModel.Description.MetadataExchangeClient en interne et charge, à partir de la configuration, la configuration de point de terminaison IMetadataExchange dont le nom correspond au schéma de l'adresse passée à Svcutil.exe en tant qu'entrée.

Récupération de métadonnées par programme à l'aide de MetadataExchangeClient

Windows Communication Foundation (WCF) récupère des métadonnées de service à l'aide des protocoles standardisés tels que WS-MetadataExchange et les requêtes HTTP/GET. Ces deux protocoles sont pris en charge par le type MetadataExchangeClient. Vous récupérez les métadonnées de service à l'aide du type System.ServiceModel.Description.MetadataExchangeClient en fournissant une adresse au point de terminaison de métadonnées et une liaison facultative. La liaison utilisée par une instance System.ServiceModel.Description.MetadataExchangeClient peut être l'une des liaisons par défaut de la classe statique MetadataExchangeBindings, une liaison fournie par l'utilisateur ou une liaison chargée à partir d'une configuration de point de terminaison pour le contrat IMetadataExchange. System.ServiceModel.Description.MetadataExchangeClient peut également résoudre des références d'URL HTTP aux métadonnées à l'aide du type HttpWebRequest.

Par défaut, une instance System.ServiceModel.Description.MetadataExchangeClient est attachée à une instance ChannelFactory unique. Vous pouvez modifier ou remplacer l'instance System.ServiceModel.ChannelFactory utilisée par System.ServiceModel.Description.MetadataExchangeClient en substituant la méthode virtuelle GetChannelFactory. De la même façon, vous pouvez modifier ou remplacer l'instance HttpWebRequest utilisée par System.ServiceModel.Description.MetadataExchangeClient pour effectuer des requêtes HTTP/GET en substituant la méthode virtuelle System.ServiceModel.Description.MetadataExchangeClient.GetWebRequest(System.Uri,System.String,System.String).

Dans cette section

Voir aussi

Référence

MetadataExchangeClient