WsdlExporter Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Converte informações de serviço, contrato e ponto de extremidade em documentos de metadados.
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
- Herança
Exemplos
O exemplo de código a seguir mostra como usar o ExportEndpoint método para gerar um conjunto de MetadataSection objetos dos pontos de extremidade em uma coleção de ServiceEndpoint objetos chamados 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
Comentários
Use a WsdlExporter classe para transformar ContractDescription ou ServiceEndpoint objetos em metadados representados por MetadataSection objetos.
O WsdlExporter é usado em um processo de três etapas.
Chame o ExportContractmétodo, ExportEndpointou ExportEndpoints passe os parâmetros apropriados.
Determine se há erros de exportação verificando a propriedade base Errors .
Se não houver erros, use a GetGeneratedMetadata para obter uma coleção de MetadataSection objetos ou obter versões mais específicas dos metadados usando as propriedades ou GeneratedXmlSchemas as GeneratedWsdlDocuments propriedades.
Você pode dar suporte à exportação de extensões WSDL personalizadas implementando a interface e as IWsdlExportExtension declarações de política personalizadas implementando a IPolicyExportExtension interface. Para obter detalhes, consulte a documentação dessas interfaces.
Observação
Só WsdlExporter
pode ser usado para exportar metadados de ContractDescription
instâncias que contêm informações de tipo CLR (Common Language Runtime), como uma ContractDescription
instância criada usando o ContractDescription.GetContract
método ou criada como parte de ServiceDescription
uma ServiceHost
instância. Você não pode usar os WsdlExporter
metadados para exportar de ContractDescription
instâncias importadas de metadados de serviço ou construídas sem informações de tipo.
Construtores
WsdlExporter() |
Inicializa uma nova instância da classe WsdlExporter. |
Propriedades
Errors |
Obtém uma coleção de erros ocorridos durante a exportação de metadados. (Herdado de MetadataExporter) |
GeneratedWsdlDocuments |
Obtém uma coleção de objetos ServiceDescription depois de chamar um dos métodos de exportação. |
GeneratedXmlSchemas |
Obtém um conjunto de objetos XmlSchema depois de chamar um dos métodos de exportação. |
PolicyVersion |
Especifica a versão da especificação WS-Policy que está sendo usada. (Herdado de MetadataExporter) |
State |
Obtém um dicionário de objetos usados na exportação de metadados. (Herdado de MetadataExporter) |
Métodos
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
ExportContract(ContractDescription) |
Exporta os metadados que descrevem apenas as informações de contrato da descrição de contrato especificada. |
ExportEndpoint(ServiceEndpoint) |
Gera metadados sobre o ponto de extremidade especificado. |
ExportEndpoints(IEnumerable<ServiceEndpoint>, XmlQualifiedName) |
Gera metadados sobre um grupo de pontos de extremidade de um serviço especificado. |
ExportPolicy(ServiceEndpoint) |
Converte as declarações de política em um objeto PolicyConversionContext. (Herdado de MetadataExporter) |
GetGeneratedMetadata() |
Retorna uma coleção enumerável de objetos MetadataSection gerados. |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |