Compartir a través de


Recuperación de metadatos

La recuperación de metadatos es el proceso de solicitar y recuperar los metadatos desde un extremo de metadatos, como un extremo de metadatos de WS-MetadataExchange (MEX) o de HTTP/GET.

Recuperación de metadatos de la línea de comandos mediante Svcutil.exe

Puede recuperar metadatos de servicio mediante solicitudes de WS-MetadataExchange o HTTP/GET utilizando la herramienta Herramienta de utilidad de metadatos de ServiceModel (Svcutil.exe) y pasando el modificador /target:metadata y una dirección. Svcutil.exe descarga los metadatos en la dirección especificada y guarda el archivo en el disco. Svcutil.exe utiliza una instancia System.ServiceModel.Description.MetadataExchangeClient internamente y carga la configuración de extremo de IMetadataExchange desde la configuración cuyo nombre coincide con el esquema de la dirección pasada a Svcutil.exe como entrada.

Recuperación de metadatos mediante programación con MetadataExchangeClient

Windows Communication Foundation (WCF) puede recuperar metadatos de servicio mediante protocolos estandarizados como WS-MetadataExchange y solicitudes HTTP/GET. Ambos protocolos están admitidos por el tipo MetadataExchangeClient. Recupera metadatos de servicio utilizando el tipo System.ServiceModel.Description.MetadataExchangeClient al proporcionar una dirección para el extremo de metadatos y un enlace opcional. El enlace utilizado por una instancia de System.ServiceModel.Description.MetadataExchangeClient puede ser uno de los enlaces predeterminados de la clase estática MetadataExchangeBindings, un enlace proporcionado por el usuario o un enlace cargado desde una configuración de extremo para el contrato IMetadataExchange. System.ServiceModel.Description.MetadataExchangeClient también puede resolver las referencias a la dirección URL HTTP a los metadatos utilizando el tipo HttpWebRequest.

De forma predeterminada, se ata una instancia System.ServiceModel.Description.MetadataExchangeClient a una instancia ChannelFactory única. Puede cambiar o reemplazar la instancia System.ServiceModel.ChannelFactory utilizada por System.ServiceModel.Description.MetadataExchangeClient invalidando el método virtual GetChannelFactory. De igual forma, puede cambiar o reemplazar la instancia HttpWebRequest utilizada por System.ServiceModel.Description.MetadataExchangeClient para realizar solicitudes HTTP/GET invalidando el método virtual System.ServiceModel.Description.MetadataExchangeClient.GetWebRequest(System.Uri,System.String,System.String).

En esta sección

Vea también

Referencia

MetadataExchangeClient