Freigeben über


XmlSerializerOperationBehavior Klasse

Definition

Steuert das Laufzeitverhalten des XmlSerializer, der mit einem Vorgang verknüpft ist.

public ref class XmlSerializerOperationBehavior : System::ServiceModel::Description::IOperationBehavior
public ref class XmlSerializerOperationBehavior : System::ServiceModel::Description::IOperationBehavior, System::ServiceModel::Description::IWsdlExportExtension
public class XmlSerializerOperationBehavior : System.ServiceModel.Description.IOperationBehavior
public class XmlSerializerOperationBehavior : System.ServiceModel.Description.IOperationBehavior, System.ServiceModel.Description.IWsdlExportExtension
type XmlSerializerOperationBehavior = class
    interface IOperationBehavior
type XmlSerializerOperationBehavior = class
    interface IOperationBehavior
    interface IWsdlExportExtension
Public Class XmlSerializerOperationBehavior
Implements IOperationBehavior
Public Class XmlSerializerOperationBehavior
Implements IOperationBehavior, IWsdlExportExtension
Vererbung
XmlSerializerOperationBehavior
Implementiert

Beispiele

Im folgenden Beispiel wird das XmlSerializerOperationBehavior für einen bestimmten Vorgang ermittelt und die Style-Eigenschaft des XmlSerializerFormatAttribute für das Serialisierungsprogramm festgelegt.

private void Run()
{
    WSHttpBinding b = new WSHttpBinding(SecurityMode.Message);
    Uri baseAddress = new Uri("http://localhost:1066/calculator");
    ServiceHost sh = new ServiceHost(typeof(Calculator), baseAddress);
    sh.AddServiceEndpoint(typeof(ICalculator), b, "");

    // Find the ContractDescription of the operation to find.
    ContractDescription cd = sh.Description.Endpoints[0].Contract;
    OperationDescription myOperationDescription = cd.Operations.Find("Add");

    // Find the serializer behavior.
    XmlSerializerOperationBehavior  serializerBehavior =
        myOperationDescription.Behaviors.
           Find<XmlSerializerOperationBehavior>();

    // If the serializer is not found, create one and add it.
    if (serializerBehavior == null)
    {
        serializerBehavior = new XmlSerializerOperationBehavior(myOperationDescription);
        myOperationDescription.Behaviors.Add(serializerBehavior);
    }

    // Change style of the serialize attribute.
    serializerBehavior.XmlSerializerFormatAttribute.Style = OperationFormatStyle.Document;

    sh.Open();
    Console.WriteLine("Listening");
    Console.ReadLine();
    sh.Close();
}
Private Sub Run()
    Dim b As New WSHttpBinding(SecurityMode.Message)
    Dim baseAddress As New Uri("http://localhost:1066/calculator")
    Dim sh As New ServiceHost(GetType(Calculator), baseAddress)
    sh.AddServiceEndpoint(GetType(ICalculator), b, "")

    ' Find the ContractDescription of the operation to find.
    Dim cd As ContractDescription = sh.Description.Endpoints(0).Contract
    Dim myOperationDescription As OperationDescription = cd.Operations.Find("Add")

    ' Find the serializer behavior.
    Dim serializerBehavior As XmlSerializerOperationBehavior = myOperationDescription.Behaviors. Find(Of XmlSerializerOperationBehavior)()

    ' If the serializer is not found, create one and add it.
    If serializerBehavior Is Nothing Then
        serializerBehavior = New XmlSerializerOperationBehavior(myOperationDescription)
        myOperationDescription.Behaviors.Add(serializerBehavior)
    End If

    ' Change style of the serialize attribute.
    serializerBehavior.XmlSerializerFormatAttribute.Style = OperationFormatStyle.Document

    sh.Open()
    Console.WriteLine("Listening")
    Console.ReadLine()
    sh.Close()
End Sub

Hinweise

Das XmlSerializerOperationBehavior aktiviert die Steuerung von XmlSerializer-Optionen, wie zum Beispiel die Style-Eigenschaft des XmlSerializerFormatAttribute.

Konstruktoren

XmlSerializerOperationBehavior(OperationDescription)

Initialisiert eine neue Instanz der XmlSerializerOperationBehavior-Klasse mit einem angegebenen Vorgang.

XmlSerializerOperationBehavior(OperationDescription, XmlSerializerFormatAttribute)

Initialisiert eine neue Instanz der XmlSerializerOperationBehavior-Klasse.

Eigenschaften

XmlSerializerFormatAttribute

Ruft das Objekt ab, das die SOAP-Verwendungs- und -Formatierungsoptionen enthält.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
GetXmlMappings()

Ruft die Auflistung der Zuordnungen zwischen XML-Schemaelementen und CLR-Datentypen ab.

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)

Explizite Schnittstellenimplementierungen

IOperationBehavior.AddBindingParameters(OperationDescription, BindingParameterCollection)

Fügt einer Vorgangsbeschreibung einen Parametersatz hinzu.

IOperationBehavior.ApplyClientBehavior(OperationDescription, ClientOperation)

Wendet das Verhalten eines Clients auf den Vorgang an.

IOperationBehavior.ApplyDispatchBehavior(OperationDescription, DispatchOperation)

Wendet ein Verteilungsverhalten auf den Vorgang an.

IOperationBehavior.Validate(OperationDescription)

Überprüft den Vorgang.

IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext)

Exportiert die Vorgangsdaten als WSDL-Dokument.

IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext)

Exportiert die Endpunktdaten als WSDL-Dokument.

Gilt für:

Weitere Informationen