WsdlExporter Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Преобразует сведения о службе, контракте и конечной точке в документы метаданных.
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
- Наследование
Примеры
В следующем примере кода показано, как использовать ExportEndpoint метод для создания набора MetadataSection объектов из конечных точек в коллекции ServiceEndpoint объектов, называемых 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
Комментарии
WsdlExporter Используйте класс для преобразования ContractDescription или ServiceEndpoint объектов в метаданные, представленные объектамиMetadataSection.
Он WsdlExporter используется в трехэтапном процессе.
ExportContractВызовите метод или ExportEndpointExportEndpoints метод, передав соответствующие параметры.
Определите наличие ошибок экспорта, проверив базовое Errors свойство.
Если нет ошибок, используйте GetGeneratedMetadata коллекцию объектов или получить более конкретные версии метаданных MetadataSection с помощью GeneratedWsdlDocuments или GeneratedXmlSchemas свойств.
Вы можете поддерживать экспорт пользовательских расширений WSDL, реализуя IWsdlExportExtension интерфейс и утверждения пользовательской политики, реализуя IPolicyExportExtension интерфейс. Дополнительные сведения см. в документации по этим интерфейсам.
Замечание
Можно WsdlExporter использовать только для экспорта метаданных из экземпляров, содержащих сведения о ContractDescription типе среды CLR, например ContractDescription экземпляр, созданный с помощью ContractDescription.GetContract метода или созданный как часть экземпляра для экземпляра ServiceDescriptionServiceHost . Нельзя использовать WsdlExporter для экспорта метаданных из экземпляров, импортированных из ContractDescription метаданных службы или созданных без сведений о типе.
Конструкторы
| Имя | Описание |
|---|---|
| WsdlExporter() |
Инициализирует новый экземпляр класса WsdlExporter. |
Свойства
| Имя | Описание |
|---|---|
| Errors |
Возвращает коллекцию ошибок, возникших во время экспорта метаданных. (Унаследовано от MetadataExporter) |
| GeneratedWsdlDocuments |
Возвращает коллекцию ServiceDescription объектов после вызова одного из методов экспорта. |
| GeneratedXmlSchemas |
Возвращает набор XmlSchema объектов после вызова одного из методов экспорта. |
| PolicyVersion |
Указывает версию используемой спецификации WS-Policy. (Унаследовано от MetadataExporter) |
| State |
Получает словарь объектов, используемых в экспорте метаданных. (Унаследовано от MetadataExporter) |
Методы
| Имя | Описание |
|---|---|
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| ExportContract(ContractDescription) |
Экспортирует метаданные, описывающие только сведения о контракте из указанного описания контракта. |
| ExportEndpoint(ServiceEndpoint) |
Создает метаданные указанной конечной точки. |
| ExportEndpoints(IEnumerable<ServiceEndpoint>, XmlQualifiedName) |
Создает метаданные о группе конечных точек из указанной службы. |
| ExportPolicy(ServiceEndpoint) |
Преобразует утверждения политики в PolicyConversionContext объект. (Унаследовано от MetadataExporter) |
| GetGeneratedMetadata() |
Возвращает перечисленную коллекцию созданных MetadataSection объектов. |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |