Поделиться через


XmlSerializerOperationBehavior Класс

Определение

Управляет поведением во время выполнения связанной XmlSerializer с операцией.

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
Наследование
XmlSerializerOperationBehavior
Реализации

Примеры

Следующий пример находит XmlSerializerOperationBehavior определенную операцию и задает Style свойство сериализатора XmlSerializerFormatAttribute .

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

Комментарии

Включает XmlSerializerOperationBehavior управление параметрами XmlSerializer , например Style свойством объекта XmlSerializerFormatAttribute.

Конструкторы

Имя Описание
XmlSerializerOperationBehavior(OperationDescription, XmlSerializerFormatAttribute)

Инициализирует новый экземпляр класса XmlSerializerOperationBehavior.

XmlSerializerOperationBehavior(OperationDescription)

Инициализирует новый экземпляр XmlSerializerOperationBehavior класса с определенной операцией.

Свойства

Имя Описание
XmlSerializerFormatAttribute

Возвращает объект, содержащий параметры использования и форматирования SOAP.

Методы

Имя Описание
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
GetXmlMappings()

Возвращает коллекцию сопоставлений между элементами схемы XML и типами данных CLR.

MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

Имя Описание
IOperationBehavior.AddBindingParameters(OperationDescription, BindingParameterCollection)

Добавляет набор параметров в описание операции.

IOperationBehavior.ApplyClientBehavior(OperationDescription, ClientOperation)

Применяет поведение клиента к операции.

IOperationBehavior.ApplyDispatchBehavior(OperationDescription, DispatchOperation)

Применяет к операции поведение отправки.

IOperationBehavior.Validate(OperationDescription)

Проверяет операцию.

IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext)

Экспортирует данные операции в виде документа WSDL.

IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext)

Экспортирует данные конечной точки в виде документа WSDL.

Применяется к

См. также раздел