Compartilhar via


XmlSerializerOperationBehavior Classe

Definição

Controla o comportamento de tempo de execução do XmlSerializer associado a uma operação.

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
Herança
XmlSerializerOperationBehavior
Implementações

Exemplos

O exemplo a seguir localiza a XmlSerializerOperationBehavior operação específica e define a Style propriedade do XmlSerializerFormatAttribute serializador.

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

Comentários

Habilita o XmlSerializerOperationBehavior controle de XmlSerializer opções, como a Style propriedade do XmlSerializerFormatAttribute.

Construtores

XmlSerializerOperationBehavior(OperationDescription)

Inicializa uma nova instância da classe XmlSerializerOperationBehavior com uma operação específica.

XmlSerializerOperationBehavior(OperationDescription, XmlSerializerFormatAttribute)

Inicializa uma nova instância da classe XmlSerializerOperationBehavior.

Propriedades

XmlSerializerFormatAttribute

Obtém o objeto que mantém as opções de uso e formato de SOAP.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetXmlMappings()

Obtém a coleção de mapeamentos entre os elementos do esquema XML e os tipos de dados do CLR.

MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

IOperationBehavior.AddBindingParameters(OperationDescription, BindingParameterCollection)

Adiciona um conjunto de parâmetros em uma descrição da operação.

IOperationBehavior.ApplyClientBehavior(OperationDescription, ClientOperation)

Aplica o comportamento do cliente à operação.

IOperationBehavior.ApplyDispatchBehavior(OperationDescription, DispatchOperation)

Aplica um comportamento de expedição à operação.

IOperationBehavior.Validate(OperationDescription)

Valida a operação.

IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext)

Exporta os dados de operação como um documento WSDL.

IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext)

Exporta os dados de ponto de extremidade como um documento WSDL.

Aplica-se a

Confira também