DataContractSerializerOperationBehavior Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
çalışma zamanı davranışını DataContractSerializertemsil eder.
public ref class DataContractSerializerOperationBehavior : System::ServiceModel::Description::IOperationBehavior
public ref class DataContractSerializerOperationBehavior : System::ServiceModel::Description::IOperationBehavior, System::ServiceModel::Description::IWsdlExportExtension
public class DataContractSerializerOperationBehavior : System.ServiceModel.Description.IOperationBehavior
public class DataContractSerializerOperationBehavior : System.ServiceModel.Description.IOperationBehavior, System.ServiceModel.Description.IWsdlExportExtension
type DataContractSerializerOperationBehavior = class
interface IOperationBehavior
type DataContractSerializerOperationBehavior = class
interface IOperationBehavior
interface IWsdlExportExtension
Public Class DataContractSerializerOperationBehavior
Implements IOperationBehavior
Public Class DataContractSerializerOperationBehavior
Implements IOperationBehavior, IWsdlExportExtension
- Devralma
-
DataContractSerializerOperationBehavior
- Uygulamalar
Örnekler
Aşağıdaki örnek, bir işlemin davranış koleksiyonunda öğesini bulur DataContractSerializerOperationBehavior ve ve IgnoreExtensionDataObject özelliklerini sıfırlarMaxItemsInObjectGraph.
private void DataContractBehavior()
{
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.
DataContractSerializerOperationBehavior serializerBehavior =
myOperationDescription.Behaviors.
Find<DataContractSerializerOperationBehavior>();
// If the serializer is not found, create one and add it.
if (serializerBehavior == null)
{
serializerBehavior = new DataContractSerializerOperationBehavior(myOperationDescription);
myOperationDescription.Behaviors.Add(serializerBehavior);
}
// Change the settings of the behavior.
serializerBehavior.MaxItemsInObjectGraph = 10000;
serializerBehavior.IgnoreExtensionDataObject = true;
sh.Open();
Console.WriteLine("Listening");
Console.ReadLine();
}
Private Sub DataContractBehavior()
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 DataContractSerializerOperationBehavior = _
myOperationDescription.Behaviors.Find _
(Of DataContractSerializerOperationBehavior)()
' If the serializer is not found, create one and add it.
If serializerBehavior Is Nothing Then
serializerBehavior = New DataContractSerializerOperationBehavior(myOperationDescription)
myOperationDescription.Behaviors.Add(serializerBehavior)
End If
' Change settings of the behavior.
serializerBehavior.MaxItemsInObjectGraph = 10000
serializerBehavior.IgnoreExtensionDataObject = True
sh.Open()
Console.WriteLine("Listening")
Console.ReadLine()
End Sub
Açıklamalar
, DataContractSerializerOperationBehavior ve IgnoreExtensionDataObject özellikleri gibi seçeneklerin DataContractSerializerMaxItemsInObjectGraph denetimini etkinleştirir. Bu özelliklerden bazıları yalnızca sınıfının oluşturucu kullanılarak ayarlanabilir. Bu durumda, DataContractSerializer yöntemi kullanılarak CreateSerializer değiştirilebilir. Veri sözleşmeleri hakkında daha fazla bilgi için bkz. Veri Sözleşmelerini Kullanma.
özelliği tarafından DataContractSurrogate döndürülen öğesini değiştirmek IDataContractSurrogate için kullanma DataContractSerializerOperationBehavior hakkında daha fazla bilgi için bkz. Veri Sözleşmesi Vekilleri.
Oluşturucular
DataContractSerializerOperationBehavior(OperationDescription) |
Belirtilen işlem açıklamasıyla sınıfının yeni bir örneğini DataContractSerializerOperationBehavior başlatır. |
DataContractSerializerOperationBehavior(OperationDescription, DataContractFormatAttribute) |
Belirtilen işlem açıklaması ve veri sözleşmesi biçimiyle sınıfının yeni bir örneğini DataContractSerializerOperationBehavior başlatır. |
Özellikler
DataContractFormatAttribute |
DataContractFormatAttribute İşlemle ilişkili öğesini alır. |
DataContractResolver |
Serileştirme ve seri durumdan çıkarma işlemleri sırasında türleri dinamik olarak eşlemek için kullanılan uygulamasını DataContractResolver alır veya ayarlar. |
DataContractSurrogate |
Serileştirme ve seri durumdan çıkarma işlemleri sırasında kullanılacak bir vekil alır veya ayarlar. |
IgnoreExtensionDataObject |
Bir tür uzantısı (ve dolayısıyla veri sözleşmesinde değil) tarafından sağlanan verilerin yoksayılıp yoksayılmayacağını belirten bir değer alır veya ayarlar. |
MaxItemsInObjectGraph |
Seri hale getirmek veya seri durumdan çıkarabilmek için nesne grafiğindeki en fazla öğe sayısını alır veya ayarlar. |
SerializationSurrogateProvider |
Serileştirme ve seri durumdan çıkarma işlemleri sırasında kullanılacak bir vekil sağlayıcı alır veya ayarlar. |
Yöntemler
CreateSerializer(Type, String, String, IList<Type>) |
Serileştirme ve seri durumdan çıkarma işlemleri için öğesinden XmlObjectSerializer devralan bir sınıfın örneğini oluşturur. |
CreateSerializer(Type, XmlDictionaryString, XmlDictionaryString, IList<Type>) |
Ad alanını içeren bir ile serileştirme ve seri durumdan çıkarma işlemleri için öğesinden XmlObjectSerializer devralan bir XmlDictionaryString sınıfın örneğini oluşturur. |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
Belirtik Arabirim Kullanımları
IOperationBehavior.AddBindingParameters(OperationDescription, BindingParameterCollection) |
Davranışa bir parametre koleksiyonu ekler. |
IOperationBehavior.ApplyClientBehavior(OperationDescription, ClientOperation) |
İşleme bir istemci davranışı ekler. |
IOperationBehavior.ApplyDispatchBehavior(OperationDescription, DispatchOperation) |
davranışı işleme uygular. |
IOperationBehavior.Validate(OperationDescription) |
İşlemi doğrular. |
IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext) |
İşlemin WSDL gösterimini dışarı aktarır. |
IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext) |
Uç nokta açıklamasını WSDL belgesi olarak dışarı aktarır. |