WsdlExporter Clase

Definición

Convierte el servicio, el contrato y la información del extremo en documentos de metadatos.

public ref class WsdlExporter : System::ServiceModel::Description::MetadataExporter
public class WsdlExporter : System.ServiceModel.Description.MetadataExporter
type WsdlExporter = class
    inherit MetadataExporter
Public Class WsdlExporter
Inherits MetadataExporter
Herencia
WsdlExporter

Ejemplos

El ejemplo de código siguiente muestra cómo utilizar el método ExportEndpoint para generar un conjunto de objetos MetadataSection desde los extremos de una colección de objetos ServiceEndpoint denominados myServiceEndpoints.

using System;
using System.ServiceModel;
using System.ServiceModel.Description;

namespace WsdlExporterSample
{
    class Program
    {
        static void Main(string[] args)
        {
            WsdlExporter exporter = new WsdlExporter();
            exporter.PolicyVersion = PolicyVersion.Policy15;

            ServiceEndpoint [] myServiceEndpoints = new ServiceEndpoint[2];
            ContractDescription myDescription = new ContractDescription ("myContract");
            myServiceEndpoints[0] = new ServiceEndpoint(myDescription,new BasicHttpBinding(),new EndpointAddress("http://localhost/myservice"));
            myServiceEndpoints[1] = new ServiceEndpoint(myDescription,new BasicHttpBinding(),new EndpointAddress("http://localhost/myservice"));

            // Export all endpoints for each endpoint in collection.
            foreach (ServiceEndpoint endpoint in myServiceEndpoints)
            {
                exporter.ExportEndpoint(endpoint);
            }
            // If there are no errors, get the documents.
            MetadataSet metadataDocs = null;
            if (exporter.Errors.Count != 0)
            {
                metadataDocs = exporter.GetGeneratedMetadata();
            }
        }
    }
}
Imports System.ServiceModel
Imports System.ServiceModel.Description

Module Module1

    Sub Main()
        Dim exporter As New WsdlExporter()
        exporter.PolicyVersion = PolicyVersion.Policy15

        Dim myServiceEndpoints() As ServiceEndpoint = New ServiceEndpoint(1) {}
        Dim myDescription As New ContractDescription("myContract")
        myServiceEndpoints(0) = New ServiceEndpoint(myDescription, New BasicHttpBinding(), New EndpointAddress("http://localhost/myservice"))
        myServiceEndpoints(1) = New ServiceEndpoint(myDescription, New BasicHttpBinding(), New EndpointAddress("http://localhost/myservice"))

        'Export all endpoints for each endpoint in collection.
        For Each endpoint As ServiceEndpoint In myServiceEndpoints
            exporter.ExportEndpoint(endpoint)
        Next

        'If there are no errors, get the documents.
        Dim metadataDocs As MetadataSet
        metadataDocs = Nothing

        If (exporter.Errors.Count = 0) Then
            metadataDocs = exporter.GetGeneratedMetadata()
        End If
    End Sub

End Module

Comentarios

Utilice la clase WsdlExporter para transformar ContractDescription o los objetos ServiceEndpoint en los metadatos representados por los objetos MetadataSection.

WsdlExporter se utiliza en un proceso de tres pasos.

  1. Llame al método ExportContract, ExportEndpoint, o ExportEndpoints, pasando los parámetros adecuados.

  2. Compruebe la propiedad Errors base para determinar si se han producido errores de exportación.

  3. Si no hay ningún error, utilice GetGeneratedMetadata para obtener una colección de los objetos MetadataSection o versiones más específicas de los metadatos mediante las propiedades GeneratedWsdlDocuments o GeneratedXmlSchemas.

Es compatible exportar las extensiones WSDL personalizadas mediante la implementación de la interfaz IWsdlExportExtension, y personalizar las aserciones de la directiva mediante la interfaz IPolicyExportExtension. Para obtener más información, vea la documentación de dichas interfaces.

Nota

WsdlExporter sólo puede utilizarse para exportar los metadatos desde las instancias ContractDescription que contienen el tipo de información Common Language Runtime (CLR), por ejemplo, una instancia ContractDescription creada mediante el método ContractDescription.GetContract, o como parte de ServiceDescription para una instancia ServiceHost. No puede utilizar WsdlExporter para exportar metadatos a partir de las instancias ContractDescription importadas desde los metadatos del servicio o construidas sin información del tipo.

Constructores

WsdlExporter()

Inicializa una nueva instancia de la clase WsdlExporter.

Propiedades

Errors

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

(Heredado de MetadataExporter)
GeneratedWsdlDocuments

Obtiene una colección de objetos ServiceDescription después de llamar a uno de los métodos de exportación.

GeneratedXmlSchemas

Obtiene un conjunto de objetos XmlSchema después de llamar a uno de los métodos de exportación.

PolicyVersion

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

(Heredado de MetadataExporter)
State

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

(Heredado de MetadataExporter)

Métodos

Equals(Object)

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

(Heredado de Object)
ExportContract(ContractDescription)

Exporta metadatos que sólo describen la información de contrato de la descripción de contrato especificada.

ExportEndpoint(ServiceEndpoint)

Genera los metadatos del punto de conexión especificado.

ExportEndpoints(IEnumerable<ServiceEndpoint>, XmlQualifiedName)

Genera los metadatos sobre un grupo de puntos de conexión de un servicio especificado.

ExportPolicy(ServiceEndpoint)

Convierte las aserciones de directiva en un objeto PolicyConversionContext.

(Heredado de MetadataExporter)
GetGeneratedMetadata()

Devuelve una colección enumerable de objetos MetadataSection generados.

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