MetadataExporter Clase

Definición

Exporta información de descripción de servicio en los metadatos.

public ref class MetadataExporter abstract
public abstract class MetadataExporter
type MetadataExporter = class
Public MustInherit Class MetadataExporter
Herencia
MetadataExporter
Derivado

Ejemplos

El ejemplo de código siguiente es un método IWsdlExportExtension.ExportContract que muestra cómo la propiedad State de la clase WsdlExporter se utiliza para adjuntar un System.Runtime.Serialization.XsdDataContractExporter personalizado que modifica la exportación de contratos de datos en el punto de conexión.

public void ExportContract(WsdlExporter exporter, WsdlContractConversionContext context)
{
// Add a custom DCAnnotationSurrogate to write data contract comments into the XSD.
object dataContractExporter;
XsdDataContractExporter xsdDCExporter;
if (!exporter.State.TryGetValue(typeof(XsdDataContractExporter), out dataContractExporter))
{
    xsdDCExporter = new XsdDataContractExporter(exporter.GeneratedXmlSchemas);
    exporter.State.Add(typeof(XsdDataContractExporter), xsdDCExporter);
}
else
{
    xsdDCExporter = (XsdDataContractExporter)dataContractExporter;
}

if (xsdDCExporter.Options == null)
    xsdDCExporter.Options = new ExportOptions();
xsdDCExporter.Options.DataContractSurrogate = new DCAnnotationSurrogate();

Comentarios

La exportación de metadatos es el proceso de describir los puntos de conexión de servicio y proyectarlos en una representación paralela normalizada (normalmente, pero no necesariamente XML) a la que pueden tener acceso las aplicaciones para implementar un cliente que utiliza el servicio. Para exportar metadatos de los objetos System.ServiceModel.Description.ServiceEndpoint, utilice una implementación de la clase abstracta MetadataExporter. Una implementación MetadataExporter genera metadatos que se encapsulan en una instancia System.ServiceModel.Description.MetadataSet.

La clase MetadataExporter proporciona un marco para generar expresiones de directiva que describen las funciones y requisitos de un enlace de extremo y sus operaciones asociadas, mensajes y errores. Estas expresiones de directiva se capturan en una instancia System.ServiceModel.Description.PolicyConversionContext. Una implementación MetadataExporter puede asociar a continuación estas expresiones de directiva a los metadatos que genera.

MetadataExporter llama en cada System.ServiceModel.Channels.BindingElement que implementa la interfaz System.ServiceModel.Description.IPolicyExportExtension en el enlace de ServiceEndpoint al generar un objeto PolicyConversionContext para la implementación MetadataExporter que se va a usar. Puede exportar nuevas aserciones de directiva mediante la implementación de la interfaz IPolicyExportExtension en sus implementaciones personalizadas del tipo System.ServiceModel.Channels.BindingElement.

El System.ServiceModel.Description.WsdlExporter tipo es la implementación de la MetadataExporter clase incluida con Windows Communication Foundation (WCF). El tipo WsdlExporter genera los metadatos WSDL con expresiones de directiva asociadas.

Para exportar metadatos WSDL personalizados o extensiones WSDL para los comportamientos del punto de conexión, comportamientos del contrato o elementos de enlace en un punto de conexión de servicio, puede implementar la interfaz System.ServiceModel.Description.IWsdlExportExtension. El tipo WsdlExporter llama a las partes de un punto de conexión de servicio que implementan esta interfaz al generar el documento WSDL desde ese punto de conexión.

Propiedades

Errors

Obtiene una colección de errores que se produjeron durante la exportación de los metadatos.

PolicyVersion

Especifica la versión de especificación de WS-Policy que se utiliza.

State

Obtiene un diccionario de objetos utilizado en la exportación de metadatos.

Métodos

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
ExportContract(ContractDescription)

Cuando se invalida en una clase derivada, exporta una descripción del contrato en metadatos.

ExportEndpoint(ServiceEndpoint)

Cuando se invalida en una clase derivada, convierte un extremo en metadatos.

ExportPolicy(ServiceEndpoint)

Convierte las aserciones de directiva en un objeto PolicyConversionContext.

GetGeneratedMetadata()

Cuando se invalida en una clase derivada, devuelve los metadatos generados por una llamada a ExportContract(ContractDescription), ExportEndpoint(ServiceEndpoint) o ExportPolicy(ServiceEndpoint).

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a