MetadataExporter Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Eksportuje informacje o opisie usługi do metadanych.
public ref class MetadataExporter abstract
public abstract class MetadataExporter
type MetadataExporter = class
Public MustInherit Class MetadataExporter
- Dziedziczenie
-
MetadataExporter
- Pochodne
Przykłady
Poniższy przykład kodu to IWsdlExportExtension.ExportContract metoda, która pokazuje, w jaki sposób State właściwość klasy WsdlExporter jest używana do dołączania niestandardowego System.Runtime.Serialization.XsdDataContractExporter , który modyfikuje eksport kontraktów danych w punkcie końcowym.
public void ExportContract(WsdlExporter exporter, WsdlContractConversionContext context)
{
// Add a custom DCAnnotationSurrogate to write data contract comments into the XSD.
object dataContractExporter;
XsdDataContractExporter xsdDCExporter;
if (!exporter.State.TryGetValue(typeof(XsdDataContractExporter), out dataContractExporter))
{
xsdDCExporter = new XsdDataContractExporter(exporter.GeneratedXmlSchemas);
exporter.State.Add(typeof(XsdDataContractExporter), xsdDCExporter);
}
else
{
xsdDCExporter = (XsdDataContractExporter)dataContractExporter;
}
if (xsdDCExporter.Options == null)
xsdDCExporter.Options = new ExportOptions();
xsdDCExporter.Options.DataContractSurrogate = new DCAnnotationSurrogate();
Uwagi
Eksportowanie metadanych to proces opisywania punktów końcowych usługi i projekcji ich w równoległą, ustandaryzowaną reprezentację (zazwyczaj, ale niekoniecznie XML), do których aplikacje mogą uzyskiwać dostęp do implementowania klienta korzystającego z usługi. Aby wyeksportować metadane z System.ServiceModel.Description.ServiceEndpoint obiektów, użyj implementacji MetadataExporter klasy abstrakcyjnej. Implementacja MetadataExporter generuje metadane, które są hermetyzowane w wystąpieniu System.ServiceModel.Description.MetadataSet .
Klasa MetadataExporter udostępnia platformę do generowania wyrażeń zasad opisujących możliwości i wymagania powiązania punktu końcowego oraz skojarzonych operacji, komunikatów i błędów. Te wyrażenia zasad są przechwytywane w wystąpieniu System.ServiceModel.Description.PolicyConversionContext . Implementacja MetadataExporter może następnie dołączyć te wyrażenia zasad do wygenerowanych metadanych.
Wywołania MetadataExporter do każdego System.ServiceModel.Channels.BindingElement , który implementuje System.ServiceModel.Description.IPolicyExportExtension interfejs w powiązaniu obiektu ServiceEndpoint podczas generowania obiektu do użycia przez implementację PolicyConversionContextMetadataExporter . Nowe asercji zasad można wyeksportować, implementując IPolicyExportExtension interfejs we niestandardowych implementacjach System.ServiceModel.Channels.BindingElement typu.
Typ to implementacja System.ServiceModel.Description.WsdlExporter klasy dołączonej MetadataExporter do programu Windows Communication Foundation (WCF). Typ WsdlExporter generuje metadane WSDL z dołączonymi wyrażeniami zasad.
Aby wyeksportować niestandardowe metadane WSDL lub rozszerzenia WSDL dla zachowań punktu końcowego, zachowania kontraktu lub elementów powiązania w punkcie końcowym usługi, można zaimplementować System.ServiceModel.Description.IWsdlExportExtension interfejs. Typ WsdlExporter wywołuje do części punktu końcowego usługi, które implementują ten interfejs podczas generowania dokumentu WSDL z tego punktu końcowego.
Właściwości
Errors |
Pobiera kolekcję błędów, które wystąpiły podczas eksportowania metadanych. |
PolicyVersion |
Określa wersję używanej specyfikacji WS-Policy. |
State |
Pobiera słownik obiektów używanych w eksporcie metadanych. |
Metody
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
ExportContract(ContractDescription) |
Gdy zastąpisz klasę pochodną, eksportuje opis kontraktu do metadanych. |
ExportEndpoint(ServiceEndpoint) |
Gdy zastąpisz klasę pochodną, konwertuje punkt końcowy na metadane. |
ExportPolicy(ServiceEndpoint) |
Konwertuje asercji zasad na PolicyConversionContext obiekt. |
GetGeneratedMetadata() |
Po przesłonięciu w klasie pochodnej zwraca metadane wygenerowane przez wywołanie metody ExportContract(ContractDescription), lub ExportEndpoint(ServiceEndpoint)ExportPolicy(ServiceEndpoint). |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |