XmlSerializerOperationBehavior Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Řídí chování XmlSerializer běhu přidružené k operaci.
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
- Dědičnost
-
XmlSerializerOperationBehavior
- Implementuje
Příklady
Následující příklad najde XmlSerializerOperationBehavior pro konkrétní operaci a nastaví Style vlastnost XmlSerializerFormatAttribute serializátoru.
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
Poznámky
Umožňuje XmlSerializerOperationBehavior řídit XmlSerializer možnosti, jako Style je vlastnost XmlSerializerFormatAttribute.
Konstruktory
XmlSerializerOperationBehavior(OperationDescription) |
Inicializuje novou instanci XmlSerializerOperationBehavior třídy s konkrétní operací. |
XmlSerializerOperationBehavior(OperationDescription, XmlSerializerFormatAttribute) |
Inicializuje novou instanci XmlSerializerOperationBehavior třídy. |
Vlastnosti
XmlSerializerFormatAttribute |
Získá objekt, který obsahuje soap použití a formát možnosti. |
Metody
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
GetType() |
Type Získá aktuální instanci. (Zděděno od Object) |
GetXmlMappings() |
Získá kolekci mapování mezi elementy schématu XML a datovými typy CLR. |
MemberwiseClone() |
Vytvoří použádnou kopii aktuálního souboru Object. (Zděděno od Object) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Explicitní implementace rozhraní
IOperationBehavior.AddBindingParameters(OperationDescription, BindingParameterCollection) |
Přidá sadu parametrů do popisu operace. |
IOperationBehavior.ApplyClientBehavior(OperationDescription, ClientOperation) |
Použije chování klienta na operaci. |
IOperationBehavior.ApplyDispatchBehavior(OperationDescription, DispatchOperation) |
Použije chování při odesílání pro operaci. |
IOperationBehavior.Validate(OperationDescription) |
Ověří operaci. |
IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext) |
Exportuje data operace jako dokument WSDL. |
IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext) |
Exportuje data koncového bodu jako dokument WSDL. |