WsdlExporter Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Wandelt Dienst-, Vertrags- und Endpunktinformationen in Metadatendokumente um.
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
- Vererbung
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie die ExportEndpoint-Methode zum Generieren von MetadataSection-Objekten aus den Endpunkten in einer Auflistung von ServiceEndpoint-Objekten verwendet wird, die als myServiceEndpoints
bezeichnet werden.
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
Hinweise
Verwenden Sie die WsdlExporter-Klasse, um ContractDescription-Objekte oder ServiceEndpoint-Objekte in Metadaten zu transformieren, die durch MetadataSection-Objekte dargestellt werden.
Der WsdlExporter wird in einem dreistufigen Prozess verwendet.
Rufen Sie die Methode ExportContract, ExportEndpoint oder ExportEndpoints auf, und übergeben Sie die entsprechenden Parameter.
Bestimmen Sie, ob Exportfehler aufgetreten sind, indem Sie die Basis-Errors-Eigenschaft prüfen.
Wenn keine Fehler vorliegen, können Sie GetGeneratedMetadata zum Abrufen einer Auflistung von MetadataSection-Objekten verwenden oder spezifischere Versionen der Metadaten mit der GeneratedWsdlDocuments-Eigenschaft oder GeneratedXmlSchemas-Eigenschaft abrufen.
Sie können eine Unterstützung für den Export benutzerdefinierter WSDL-Erweiterungen einrichten, indem Sie die IWsdlExportExtension-Schnittstelle implementieren, sowie eine Unterstützung für benutzerdefinierte Richtlinienassertionen, indem Sie die IPolicyExportExtension-Schnittstelle implementieren. Weitere Informationen finden Sie in der Dokumentation zu diesen Schnittstellen.
Hinweis
WsdlExporter
kann nur zum Exportieren von Metadaten von ContractDescription
-Instanzen verwendet werden, die Common Language Runtime (CLR)-Typinformationen enthalten, wie z. B. eine ContractDescription
-Instanz, die mit der ContractDescription.GetContract
-Methode oder als Teil der ServiceDescription
für eine ServiceHost
-Instanz erstellt wurde. Sie können WsdlExporter
nicht zum Exportieren von Metadaten aus ContractDescription
-Instanzen verwenden, die aus Dienstmetadaten stammen oder ohne Typinformationen erstellt wurden.
Konstruktoren
WsdlExporter() |
Initialisiert eine neue Instanz der WsdlExporter-Klasse. |
Eigenschaften
Errors |
Ruft eine Auflistung von Fehlern ab, die während des Metadatenexports aufgetreten sind. (Geerbt von MetadataExporter) |
GeneratedWsdlDocuments |
Ruft eine Auflistung von ServiceDescription-Objekten auf, nachdem eine der Exportmethoden aufgerufen wurde. |
GeneratedXmlSchemas |
Ruft eine Auflistung von XmlSchema-Objekten ab, nachdem eine der Exportmethoden aufgerufen wurde. |
PolicyVersion |
Gibt die Version der verwendeten WS-Richtlinienspezifikation an. (Geerbt von MetadataExporter) |
State |
Ruft ein Wörterbuch mit den im Export der Metadaten verwendeten Objekten ab. (Geerbt von MetadataExporter) |
Methoden
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
ExportContract(ContractDescription) |
Exportiert Metadaten, in denen nur die Vertragsinformationen aus der angegebenen Vertragsbeschreibung beschrieben werden. |
ExportEndpoint(ServiceEndpoint) |
Generiert Metadaten zum angegebenen Endpunkt. |
ExportEndpoints(IEnumerable<ServiceEndpoint>, XmlQualifiedName) |
Generiert Metadaten zu einer Gruppe von Endpunkten von einem angegebenen Dienst. |
ExportPolicy(ServiceEndpoint) |
Konvertiert Richtlinienassertionen in ein PolicyConversionContext-Objekt. (Geerbt von MetadataExporter) |
GetGeneratedMetadata() |
Gibt eine aufzählbare Auflistung generierter MetadataSection-Objekte zurück. |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |