Condividi tramite


MetadataExporter Classe

Definizione

Esporta le informazioni sulla descrizione del servizio nei metadati.

public ref class MetadataExporter abstract
public abstract class MetadataExporter
type MetadataExporter = class
Public MustInherit Class MetadataExporter
Ereditarietà
MetadataExporter
Derivato

Esempio

L'esempio di codice seguente è un IWsdlExportExtension.ExportContract metodo che illustra come viene utilizzata la State proprietà della classe WsdlExporter per associare un oggetto personalizzato System.Runtime.Serialization.XsdDataContractExporter che modifica l'esportazione dei contratti dati nell'endpoint.

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();

Commenti

L'esportazione dei metadati è il processo di descrizione degli endpoint di servizio e di proiettarli in una rappresentazione parallela standardizzata (in genere, ma non necessariamente XML) a cui le applicazioni possono accedere per implementare un client che usa il servizio. Per esportare metadati da System.ServiceModel.Description.ServiceEndpoint oggetti, usare un'implementazione della MetadataExporter classe astratta. Un'implementazione MetadataExporter genera metadati incapsulati in un'istanza System.ServiceModel.Description.MetadataSet.

La MetadataExporter classe fornisce un framework per la generazione di espressioni di criteri che descrivono le funzionalità e i requisiti di un'associazione di endpoint e le operazioni, i messaggi e gli errori associati. Queste espressioni di politiche vengono acquisite in un'istanza di System.ServiceModel.Description.PolicyConversionContext. Un'implementazione MetadataExporter può quindi associare queste espressioni di criteri ai metadati generati.

Il MetadataExporter chiama ciascun System.ServiceModel.Channels.BindingElement che implementa l'interfaccia System.ServiceModel.Description.IPolicyExportExtension nel binding di un ServiceEndpoint durante la generazione di un oggetto PolicyConversionContext per l'uso nell'implementazione MetadataExporter. È possibile esportare nuove asserzioni di criteri implementando l'interfaccia IPolicyExportExtension nelle implementazioni personalizzate del System.ServiceModel.Channels.BindingElement tipo.

Il System.ServiceModel.Description.WsdlExporter tipo è l'implementazione della MetadataExporter classe inclusa in Windows Communication Foundation (WCF). Il WsdlExporter tipo genera metadati WSDL con espressioni di criteri associate.

Per esportare metadati WSDL personalizzati o estensioni WSDL per comportamenti degli endpoint, comportamenti del contratto o elementi di associazione in un endpoint di servizio, è possibile implementare l'interfaccia System.ServiceModel.Description.IWsdlExportExtension . Il WsdlExporter tipo chiama in parti di un endpoint di servizio che implementano questa interfaccia durante la generazione del documento WSDL da tale endpoint.

Proprietà

Nome Descrizione
Errors

Ottiene una raccolta di errori che si sono verificati durante l'esportazione dei metadati.

PolicyVersion

Specifica la versione di WS-Policy specifica utilizzata.

State

Ottiene un dizionario di oggetti utilizzati nell'esportazione dei metadati.

Metodi

Nome Descrizione
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
ExportContract(ContractDescription)

In caso di override in una classe derivata, esporta una descrizione del contratto in metadati.

ExportEndpoint(ServiceEndpoint)

Quando sottoposto a override in una classe derivata, converte un endpoint in metadati.

ExportPolicy(ServiceEndpoint)

Converte le asserzioni di criteri in un PolicyConversionContext oggetto .

GetGeneratedMetadata()

In caso di override in una classe derivata, restituisce i metadati generati da una chiamata a ExportContract(ContractDescription), ExportEndpoint(ServiceEndpoint)o ExportPolicy(ServiceEndpoint).

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a