다음을 통해 공유


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 하 고 직렬 변환기의 속성을 XmlSerializerFormatAttribute 설정 Style 합니다.

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 속성과 같은 Style 옵션을 제어 XmlSerializerXmlSerializerFormatAttribute수 있습니다.

생성자

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 문서로 내보냅니다.

적용 대상

추가 정보