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 для конкретной операции и задано свойство StyleXmlSerializerFormatAttribute для сериализатора.

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, например свойство StyleXmlSerializerFormatAttribute.

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

XmlSerializerOperationBehavior(OperationDescription)

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

XmlSerializerOperationBehavior(OperationDescription, XmlSerializerFormatAttribute)

Инициализирует новый экземпляр класса 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.

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

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