Share via


WsdlExporter Classe

Définition

Convertit les informations de service, de contrat et de point de terminaison en documents de métadonnées.

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
Héritage
WsdlExporter

Exemples

L'exemple de code suivant montre comment utiliser la méthode ExportEndpoint pour générer un ensemble d'objets MetadataSection à partir des points de terminaison dans une collection d'objets ServiceEndpoint appelés 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

Remarques

Utilisez la classe WsdlExporter pour transformer des objets ContractDescription ou ServiceEndpoint en métadonnées représentées par des objets MetadataSection.

L'WsdlExporter est utilisé dans un processus en trois étapes.

  1. Appelez la méthode ExportContract, ExportEndpoint ou ExportEndpoints, en passant les paramètres appropriés.

  2. Déterminez s'il existe des erreurs d'exportation en vérifiant la propriété Errors de base.

  3. En l’absence d’erreurs, utilisez les GetGeneratedMetadata pour obtenir une collection d’objets MetadataSection ou obtenir des versions plus spécifiques des métadonnées à l’aide des propriétés GeneratedWsdlDocuments ou GeneratedXmlSchemas.

Vous pouvez prendre en charge des extensions WSDL d’exportation personnalisées en implémentant l’interface IWsdlExportExtension et des assertions de stratégie personnalisées en implémentant l’interface IPolicyExportExtension. Pour plus d'informations, consultez la documentation relative à ces interfaces.

Notes

L'WsdlExporter permet uniquement d'exporter des métadonnées à partir d'instances ContractDescription qui contiennent des informations de type Common Language Runtime (CLR), telles qu'une instance ContractDescription créée à l'aide de la méthode ContractDescription.GetContract ou créée dans le cadre de la ServiceDescription d'une instance ServiceHost. Vous ne pouvez pas utiliser WsdlExporter pour exporter des métadonnées à partir d'instances ContractDescription importées depuis les métadonnées du service ou construites sans information de type.

Constructeurs

WsdlExporter()

Initialise une nouvelle instance de la classe WsdlExporter.

Propriétés

Errors

Obtient une collection des erreurs qui se sont produites lors de l’exportation de métadonnées.

(Hérité de MetadataExporter)
GeneratedWsdlDocuments

Obtient une collection d'objets ServiceDescription après avoir appelé l'une des méthodes d'exportation.

GeneratedXmlSchemas

Obtient un ensemble d'objets XmlSchema après avoir appelé l'une des méthodes d'exportation.

PolicyVersion

Spécifie la version de spécification WS-Policy utilisée.

(Hérité de MetadataExporter)
State

Obtient un dictionnaire d'objets utilisés lors de l'exportation de métadonnées.

(Hérité de MetadataExporter)

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
ExportContract(ContractDescription)

Exporte des métadonnées qui ne décrivent que les informations de contrat de la description de contrat spécifiée.

ExportEndpoint(ServiceEndpoint)

Génère des métadonnées relatives au point de terminaison spécifié.

ExportEndpoints(IEnumerable<ServiceEndpoint>, XmlQualifiedName)

Génère des métadonnées relatives à un groupe de points de terminaison à partir d'un service spécifié.

ExportPolicy(ServiceEndpoint)

Convertit des assertions de stratégie en objet PolicyConversionContext.

(Hérité de MetadataExporter)
GetGeneratedMetadata()

Retourne une collection dénombrable d'objets MetadataSection générés.

GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à