DataContractSerializer Oluşturucular

Tanım

DataContractSerializer sınıfının yeni bir örneğini başlatır.

Aşırı Yüklemeler

DataContractSerializer(Type)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır.

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca nesne grafında bulunabilecek bilinen türlerin listesini, serileştirilecek en fazla grafik öğesi sayısını, beklenmeyen verileri yoksayacak parametreleri, grafikteki nesne başvuru verilerini korumak için standart olmayan XML yapılarının kullanılıp kullanılmayacağını, özel serileştirmeye yönelik bir vekili, içeriği içeren XML öğesini ve ad alanını belirten parametrelerini XmlDictionaryString belirtir, ve çalışma zamanında bildirimleri eşlemek xsi:type için bir alternatif.

DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca nesne grafında bulunabilecek bilinen türlerin listesini, serileştirilecek en fazla grafik öğesi sayısını, beklenmeyen verileri yoksayacak parametreleri, grafikteki nesne başvuru verilerini korumak için standart olmayan XML yapılarının kullanılıp kullanılmayacağını, özel serileştirmeye yönelik bir vekili, içeriği içeren XML öğesini ve ad alanını belirtir. ve çalışma zamanında bildirimleri eşlemek xsi:type için bir alternatif.

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca nesne grafında mevcut olabilecek bilinen türlerin listesini, serileştirilecek en fazla grafik öğesi sayısını, beklenmeyen verileri yoksayacak parametreleri, grafikteki nesne başvuru verilerini korumak için standart olmayan XML yapılarının kullanılıp kullanılmayacağını, özel serileştirmeye yönelik bir vekili ve içeriğini içeren XML öğesini ve ad alanını belirten parametrelerini XmlDictionaryString belirtir.

DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca nesne grafında bulunabilecek bilinen türlerin listesini, serileştirilecek en fazla grafik öğesi sayısını, beklenmeyen verileri yoksayacak parametreleri, grafikteki nesne başvuru verilerini korumak için standart olmayan XML yapılarının kullanılıp kullanılmayacağını, özel serileştirmeye yönelik bir vekili ve içeriği içeren XML öğesini ve ad alanını belirtir.

DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca nesne grafında bulunabilecek bilinen türlerin listesini, serileştirilecek en fazla grafik öğesi sayısını, beklenmeyen verileri yoksayacak parametreleri, grafikteki nesne başvuru verilerini korumak için standart olmayan XML yapılarının kullanılıp kullanılmayacağını ve özel serileştirme için bir vekili belirtir.

DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca nesne grafında mevcut olabilecek bilinen türlerin listesini, serileştirilecek en fazla grafik öğesi sayısını, beklenmeyen verileri yoksayacak parametreleri, grafikteki nesne başvuru verilerini korumak için standart olmayan XML yapılarının kullanılıp kullanılmayacağını, özel serileştirme için bir vekili ve çalışma zamanında eşleme xsi:type bildirimleri için alternatifi belirtir.

DataContractSerializer(Type, String, String, IEnumerable<Type>)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca iki dize parametresinde kök XML öğesini ve ad alanını ve nesne grafında mevcut olabilecek bilinen türlerin listesini belirtir.

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)

türündeki DataContractSerializer parametreler aracılığıyla belirtilen XML kök öğesini ve ad alanını kullanarak belirtilen türdeki bir nesneyi serileştirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini XmlDictionaryStringbaşlatır.

DataContractSerializer(Type, String, String)

Sağlanan XML kök öğesini ve ad alanını kullanarak belirtilen türdeki DataContractSerializer bir nesneyi serileştirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır.

DataContractSerializer(Type, DataContractSerializerSettings)

Belirtilen tür ve ayarlardaki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır.

DataContractSerializer(Type, IEnumerable<Type>)

Belirtilen türdeki DataContractSerializer bir nesneyi serileştirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini ve nesne grafında mevcut olabilecek bilinen türler koleksiyonunu başlatır.

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca iki XmlDictionaryString parametrede kök XML öğesini ve ad alanını ve nesne grafında mevcut olabilecek bilinen türlerin listesini belirtir.

DataContractSerializer(Type)

Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır.

public:
 DataContractSerializer(Type ^ type);
public DataContractSerializer (Type type);
new System.Runtime.Serialization.DataContractSerializer : Type -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type)

Parametreler

type
Type

Serileştirilmiş veya seri durumdan çıkarılmış örneklerin türü.

Örnekler

Aşağıdaki örnek seri hale getirmek veya seri durumdan çıkarma türünü belirten bir örneğini DataContractSerializer oluşturur.

public static void Constructor1()
{
    // Create an instance of the DataContractSerializer.
    DataContractSerializer ser =
        new DataContractSerializer(typeof(Person));
    // Other code not shown.
}
 Public Shared Sub Constructor1() 
     ' Create an instance of the DataContractSerializer.
     Dim ser As New DataContractSerializer(GetType(Person))

     ' Other code not shown.    
 End Sub

Şunlara uygulanır

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca nesne grafında bulunabilecek bilinen türlerin listesini, serileştirilecek en fazla grafik öğesi sayısını, beklenmeyen verileri yoksayacak parametreleri, grafikteki nesne başvuru verilerini korumak için standart olmayan XML yapılarının kullanılıp kullanılmayacağını, özel serileştirmeye yönelik bir vekili, içeriği içeren XML öğesini ve ad alanını belirten parametrelerini XmlDictionaryString belirtir, ve çalışma zamanında bildirimleri eşlemek xsi:type için bir alternatif.

public:
 DataContractSerializer(Type ^ type, System::Xml::XmlDictionaryString ^ rootName, System::Xml::XmlDictionaryString ^ rootNamespace, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System::Runtime::Serialization::IDataContractSurrogate ^ dataContractSurrogate, System::Runtime::Serialization::DataContractResolver ^ dataContractResolver);
public DataContractSerializer (Type type, System.Xml.XmlDictionaryString rootName, System.Xml.XmlDictionaryString rootNamespace, System.Collections.Generic.IEnumerable<Type> knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System.Runtime.Serialization.IDataContractSurrogate dataContractSurrogate, System.Runtime.Serialization.DataContractResolver dataContractResolver);
new System.Runtime.Serialization.DataContractSerializer : Type * System.Xml.XmlDictionaryString * System.Xml.XmlDictionaryString * seq<Type> * int * bool * bool * System.Runtime.Serialization.IDataContractSurrogate * System.Runtime.Serialization.DataContractResolver -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As XmlDictionaryString, rootNamespace As XmlDictionaryString, knownTypes As IEnumerable(Of Type), maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, preserveObjectReferences As Boolean, dataContractSurrogate As IDataContractSurrogate, dataContractResolver As DataContractResolver)

Parametreler

type
Type

Serileştirilmiş veya seri durumdan çıkarılmış örneklerin türü.

rootName
XmlDictionaryString

Seri hale getirmek veya seri durumdan çıkarma içeriğini kapsayan XML öğesi.

rootNamespace
XmlDictionaryString

serileştirmek veya seri durumdan çıkarma içeriğini kapsayan XML öğesinin ad alanı.

knownTypes
IEnumerable<Type>

Type Nesne IEnumerable<T> grafında mevcut olabilecek bilinen türleri içeren bir öğesi.

maxItemsInObjectGraph
Int32

Grafikteki seri durumdan çıkarma veya seri durumdan çıkarma için en fazla öğe sayısı.

ignoreExtensionDataObject
Boolean

true serileştirme ve seri durumdan çıkarma sırasında türün bir uzantısı tarafından sağlanan verileri yoksaymak için; aksi takdirde , false.

preserveObjectReferences
Boolean

true nesne başvuru verilerini korumak için standart olmayan XML yapılarını kullanmak; aksi takdirde , false.

dataContractSurrogate
IDataContractSurrogate

Serileştirme işlemini özelleştirmek için uygulaması IDataContractSurrogate .

dataContractResolver
DataContractResolver

Bildirimleri veri sözleşmesi türleriyle eşlemek xsi:type için uygulamasıDataContractResolver.

Şunlara uygulanır

DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca nesne grafında bulunabilecek bilinen türlerin listesini, serileştirilecek en fazla grafik öğesi sayısını, beklenmeyen verileri yoksayacak parametreleri, grafikteki nesne başvuru verilerini korumak için standart olmayan XML yapılarının kullanılıp kullanılmayacağını, özel serileştirmeye yönelik bir vekili, içeriği içeren XML öğesini ve ad alanını belirtir. ve çalışma zamanında bildirimleri eşlemek xsi:type için bir alternatif.

public:
 DataContractSerializer(Type ^ type, System::String ^ rootName, System::String ^ rootNamespace, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System::Runtime::Serialization::IDataContractSurrogate ^ dataContractSurrogate, System::Runtime::Serialization::DataContractResolver ^ dataContractResolver);
public DataContractSerializer (Type type, string rootName, string rootNamespace, System.Collections.Generic.IEnumerable<Type> knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System.Runtime.Serialization.IDataContractSurrogate dataContractSurrogate, System.Runtime.Serialization.DataContractResolver dataContractResolver);
new System.Runtime.Serialization.DataContractSerializer : Type * string * string * seq<Type> * int * bool * bool * System.Runtime.Serialization.IDataContractSurrogate * System.Runtime.Serialization.DataContractResolver -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As String, rootNamespace As String, knownTypes As IEnumerable(Of Type), maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, preserveObjectReferences As Boolean, dataContractSurrogate As IDataContractSurrogate, dataContractResolver As DataContractResolver)

Parametreler

type
Type

Serileştirilmiş veya seri durumdan çıkarılmış örneklerin türü.

rootName
String

Seri hale getirmek veya seri durumdan çıkarma içeriğini kapsayan XML öğesi.

rootNamespace
String

serileştirmek veya seri durumdan çıkarma içeriğini kapsayan XML öğesinin ad alanı.

knownTypes
IEnumerable<Type>

Type Nesne IEnumerable<T> grafında mevcut olabilecek bilinen türleri içeren bir öğesi.

maxItemsInObjectGraph
Int32

Grafikteki seri durumdan çıkarma veya seri durumdan çıkarma için en fazla öğe sayısı.

ignoreExtensionDataObject
Boolean

true serileştirme ve seri durumdan çıkarma sırasında türün bir uzantısı tarafından sağlanan verileri yoksaymak için; aksi takdirde , false.

preserveObjectReferences
Boolean

true nesne başvuru verilerini korumak için standart olmayan XML yapılarını kullanmak; aksi takdirde , false.

dataContractSurrogate
IDataContractSurrogate

Serileştirme işlemini özelleştirmek için uygulaması IDataContractSurrogate .

dataContractResolver
DataContractResolver

Bildirimleri veri sözleşmesi türleriyle eşlemek xsi:type için uygulamasıDataContractResolver.

Şunlara uygulanır

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca nesne grafında mevcut olabilecek bilinen türlerin listesini, serileştirilecek en fazla grafik öğesi sayısını, beklenmeyen verileri yoksayacak parametreleri, grafikteki nesne başvuru verilerini korumak için standart olmayan XML yapılarının kullanılıp kullanılmayacağını, özel serileştirmeye yönelik bir vekili ve içeriğini içeren XML öğesini ve ad alanını belirten parametrelerini XmlDictionaryString belirtir.

public:
 DataContractSerializer(Type ^ type, System::Xml::XmlDictionaryString ^ rootName, System::Xml::XmlDictionaryString ^ rootNamespace, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System::Runtime::Serialization::IDataContractSurrogate ^ dataContractSurrogate);
public DataContractSerializer (Type type, System.Xml.XmlDictionaryString rootName, System.Xml.XmlDictionaryString rootNamespace, System.Collections.Generic.IEnumerable<Type> knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System.Runtime.Serialization.IDataContractSurrogate dataContractSurrogate);
new System.Runtime.Serialization.DataContractSerializer : Type * System.Xml.XmlDictionaryString * System.Xml.XmlDictionaryString * seq<Type> * int * bool * bool * System.Runtime.Serialization.IDataContractSurrogate -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As XmlDictionaryString, rootNamespace As XmlDictionaryString, knownTypes As IEnumerable(Of Type), maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, preserveObjectReferences As Boolean, dataContractSurrogate As IDataContractSurrogate)

Parametreler

type
Type

Serileştirilmiş veya seri durumdan çıkarılmış örneklerin türü.

rootName
XmlDictionaryString

serileştirmek XmlDictionaryString veya seri durumdan çıkarma içeriğini kapsayan XML öğesini belirtir.

rootNamespace
XmlDictionaryString

kökün XmlDictionaryString XML ad alanını belirtir.

knownTypes
IEnumerable<Type>

Type Nesne IEnumerable<T> grafında mevcut olabilecek bilinen türleri içeren bir öğesi.

maxItemsInObjectGraph
Int32

Grafikteki seri durumdan çıkarma veya seri durumdan çıkarma için en fazla öğe sayısı.

ignoreExtensionDataObject
Boolean

true serileştirme ve seri durumdan çıkarma sırasında türün bir uzantısı tarafından sağlanan verileri yoksaymak için; aksi takdirde , false.

preserveObjectReferences
Boolean

true nesne başvuru verilerini korumak için standart olmayan XML yapılarını kullanmak; aksi takdirde , false.

dataContractSurrogate
IDataContractSurrogate

Serileştirme işlemini özelleştirmek için uygulaması IDataContractSurrogate .

Özel durumlar

Öğe sayısı en yüksek değeri aşıyor.

Örnekler

Aşağıdaki örnek seri durumdan DataContractSerializer çıkarma veya seri durumdan çıkarma türünü, kök XML öğesini ve ad alanını (parametre olarak XmlDictionaryString ) ve seri durumdan çıkarma sırasında kullanılan türleri içeren bir örneğini belirten bir IEnumerable<T> örneği oluşturur. Kod ayrıca ve parametrelerini olarak ayarlar ignoreExtensionDataObject ve eski türleri (özniteliği uygulanmamış türler) işlemek için arabirimin DataContractAttribute bir uygulamasını IDataContractSurrogatetruebelirtir.preserveObjectReferences Daha fazla bilgi için belgelere IDataContractSurrogate bakın.

public static void Constructor9()
{
    // Create a generic List of types and add the known types
    // to the collection.
    List<Type> knownTypeList = new List<Type>();
    knownTypeList.Add(typeof(PurchaseOrder));
    knownTypeList.Add(typeof(PurchaseOrderV3));

    // Create an XmlDictionary and add values to it.
    XmlDictionary d = new XmlDictionary();
    XmlDictionaryString name_value = d.Add("Customer");
    XmlDictionaryString ns_value = d.Add("http://www.contoso.com");

    // Create an instance of a class that
    // implements the IDataContractSurrogate interface.
    // The implementation code is not shown here.
    DCSurrogate mySurrogate = new DCSurrogate();

    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        name_value,
        ns_value,
        knownTypeList,
        64 * 1024,
        true,
        true,
        mySurrogate);

    // Other code not shown.
}
Public Shared Sub Constructor9() 

    ' Create a generic List of types and add the known types
    ' to the collection.
    Dim knownTypeList As New List(Of Type)
    knownTypeList.Add(GetType(PurchaseOrder))
    knownTypeList.Add(GetType(PurchaseOrderV3))
    
    ' Create an XmlDictionary and add values to it.
    Dim d As New XmlDictionary()
    Dim name_value As XmlDictionaryString = d.Add("Customer")
    Dim ns_value As XmlDictionaryString = d.Add("http://www.contoso.com")
    
    ' Create an instance of a class that 
    ' implements the IDataContractSurrogate interface.
    ' The implementation code is not shown here.
    Dim mySurrogate As New DCSurrogate()
    
    Dim ser As New DataContractSerializer(GetType(Person), _
    name_value, _
    ns_value, _
    knownTypeList, _
    64 * 1064, _
    True, _
    True, _
    mySurrogate)

    ' Other code not shown.    

End Sub

Ayrıca bkz.

Şunlara uygulanır

DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca nesne grafında bulunabilecek bilinen türlerin listesini, serileştirilecek en fazla grafik öğesi sayısını, beklenmeyen verileri yoksayacak parametreleri, grafikteki nesne başvuru verilerini korumak için standart olmayan XML yapılarının kullanılıp kullanılmayacağını, özel serileştirmeye yönelik bir vekili ve içeriği içeren XML öğesini ve ad alanını belirtir.

public:
 DataContractSerializer(Type ^ type, System::String ^ rootName, System::String ^ rootNamespace, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System::Runtime::Serialization::IDataContractSurrogate ^ dataContractSurrogate);
public DataContractSerializer (Type type, string rootName, string rootNamespace, System.Collections.Generic.IEnumerable<Type> knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System.Runtime.Serialization.IDataContractSurrogate dataContractSurrogate);
new System.Runtime.Serialization.DataContractSerializer : Type * string * string * seq<Type> * int * bool * bool * System.Runtime.Serialization.IDataContractSurrogate -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As String, rootNamespace As String, knownTypes As IEnumerable(Of Type), maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, preserveObjectReferences As Boolean, dataContractSurrogate As IDataContractSurrogate)

Parametreler

type
Type

Serileştirilmiş veya seri durumdan çıkarılmış örneklerin türü.

rootName
String

Seri hale getirmek veya seri durumdan çıkarma içeriğini kapsayan XML öğesi.

rootNamespace
String

serileştirmek veya seri durumdan çıkarma içeriğini kapsayan XML öğesinin ad alanı.

knownTypes
IEnumerable<Type>

Type Nesne IEnumerable<T> grafında mevcut olabilecek bilinen türleri içeren bir öğesi.

maxItemsInObjectGraph
Int32

Grafikteki seri durumdan çıkarma veya seri durumdan çıkarma için en fazla öğe sayısı.

ignoreExtensionDataObject
Boolean

true serileştirme ve seri durumdan çıkarma sırasında türün bir uzantısı tarafından sağlanan verileri yoksaymak için; aksi takdirde , false.

preserveObjectReferences
Boolean

true nesne başvuru verilerini korumak için standart olmayan XML yapılarını kullanmak; aksi takdirde , false.

dataContractSurrogate
IDataContractSurrogate

Serileştirme işlemini özelleştirmek için uygulaması IDataContractSurrogate .

Özel durumlar

Öğe sayısı en yüksek değeri aşıyor.

Örnekler

Aşağıdaki örnek seri durumdan DataContractSerializer çıkarma veya seri durumdan çıkarma türünü belirten bir örneği, kök XML öğesi ve ad alanını ve seri durumdan çıkarma sırasında kullanılan türleri içeren bir IEnumerable<T> örneğini oluşturur. Kod ayrıca ve parametrelerini olarak ayarlar ignoreExtensionDataObject ve eski türleri (özniteliği uygulanmamış türler) işlemek için arabirimin DataContractAttribute bir uygulamasını IDataContractSurrogatetruebelirtir.preserveObjectReferences Daha fazla bilgi için belgelere IDataContractSurrogate bakın.

public static void Constructor8()
{
    // Create a generic List of types and add the known types
    // to the collection.
    List<Type> knownTypeList = new List<Type>();
    knownTypeList.Add(typeof(PurchaseOrder));
    knownTypeList.Add(typeof(PurchaseOrderV3));

    // Create an instance of a class that
    // implements the IDataContractSurrogate interface.
    // The implementation code is not shown here.
    DCSurrogate mySurrogate = new DCSurrogate();

    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        "Customer",
        @"http://www.contoso.com",
        knownTypeList,
        64 * 1024,
        true,
        true,
        mySurrogate);

    // Other code not shown.
}
Public Shared Sub Constructor8() 

    ' Create a generic List of types and add the known types
    ' to the collection.
    Dim knownTypeList As New List(Of Type)
    knownTypeList.Add(GetType(PurchaseOrder))
    knownTypeList.Add(GetType(PurchaseOrderV3))

    ' Create an instance of a class that 
    ' implements the IDataContractSurrogate interface.
    ' The implementation code is not shown here.
    Dim mySurrogate As New DCSurrogate()

    Dim ser As New DataContractSerializer(GetType(Person), _
    "Customer", _
    "http://www.contoso.com", _
    knownTypeList, _
    64 * 1064, _
    True, _
    True, _
    mySurrogate)

    ' Other code not shown.
End Sub

Ayrıca bkz.

Şunlara uygulanır

DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca nesne grafında bulunabilecek bilinen türlerin listesini, seri hale getirilecek grafik öğelerinin üst sınırını, beklenmeyen verileri yoksayacak parametreleri, grafikteki nesne başvuru verilerini korumak için standart olmayan XML yapılarının kullanılıp kullanılmayacağını ve özel serileştirme için bir vekil belirtir.

public:
 DataContractSerializer(Type ^ type, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System::Runtime::Serialization::IDataContractSurrogate ^ dataContractSurrogate);
public DataContractSerializer (Type type, System.Collections.Generic.IEnumerable<Type> knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System.Runtime.Serialization.IDataContractSurrogate dataContractSurrogate);
new System.Runtime.Serialization.DataContractSerializer : Type * seq<Type> * int * bool * bool * System.Runtime.Serialization.IDataContractSurrogate -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, knownTypes As IEnumerable(Of Type), maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, preserveObjectReferences As Boolean, dataContractSurrogate As IDataContractSurrogate)

Parametreler

type
Type

Seri hale getirilmiş veya seri durumdan çıkarılmış örneklerin türü.

knownTypes
IEnumerable<Type>

Type Nesne IEnumerable<T> grafında mevcut olabilecek bilinen türleri içeren bir öğesi.

maxItemsInObjectGraph
Int32

Grafikteki seri hale getirilmeye veya seri durumdan çıkarılırken en fazla öğe sayısı. Varsayılan değer , Int32.MaxValue özelliği tarafından döndürülen değerdir.

ignoreExtensionDataObject
Boolean

true serileştirme ve seri durumdan çıkarma sonrasında türün bir uzantısı tarafından sağlanan verileri yoksaymak için; aksi takdirde , false.

preserveObjectReferences
Boolean

true nesne başvuru verilerini korumak için standart olmayan XML yapılarını kullanmak; aksi takdirde , false.

dataContractSurrogate
IDataContractSurrogate

IDataContractSurrogate Serileştirme işlemini özelleştirmek için uygulaması.

Özel durumlar

Öğe sayısı en yüksek değeri aşıyor.

Örnekler

Aşağıdaki örnek seri hale getirilmeye veya seri durumdan çıkarma sırasında kullanılan bilinen türleri içeren bir örneğine ve seri durumdan çıkarma sırasında kullanılan türü belirten bir IEnumerable<T> örneği DataContractSerializer oluşturur. Kod ayrıca ve parametrelerini olarak ayarlar ignoreExtensionDataObject ve eski türleri (özniteliği uygulanmayan türler) işlemek için arabirimin DataContractAttribute bir uygulamasını IDataContractSurrogatetruebelirtir.preserveObjectReferences Daha fazla bilgi için belgelere IDataContractSurrogate bakın.

public static void Constructor7()
{
    // Create a generic List of types and add the known types
    // to the collection.
    List<Type> knownTypeList = new List<Type>();
    knownTypeList.Add(typeof(PurchaseOrder));
    knownTypeList.Add(typeof(PurchaseOrderV3));

    // Create an instance of a class that
    // implements the IDataContractSurrogate interface.
    // The implementation code is not shown here.
    DCSurrogate mySurrogate = new DCSurrogate();

    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        knownTypeList,
        64 * 1024,
        true,
        true,
        mySurrogate);
    // Other code not shown.
}
Public Shared Sub Constructor7() 

    ' Create a generic List of types and add the known types
    ' to the collection.
    Dim knownTypeList As New List(Of Type)
    knownTypeList.Add(GetType(PurchaseOrder))
    knownTypeList.Add(GetType(PurchaseOrderV3))

    ' Create an instance of a class that 
    ' implements the IDataContractSurrogate interface.
    ' The implementation code is not shown here.
    Dim mySurrogate As New DCSurrogate()

    Dim ser As New DataContractSerializer(GetType(Person), _
    knownTypeList, _
    64 * 1064, _
    True, _
    True, _
     mySurrogate)

    ' Other code not shown.
End Sub

Ayrıca bkz.

Şunlara uygulanır

DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca, nesne grafında bulunabilecek bilinen türlerin listesini, serileştirilecek grafik öğelerinin üst sınırını, beklenmeyen verileri yoksayacak parametreleri, grafikteki nesne başvuru verilerini korumak için standart olmayan XML yapılarının kullanılıp kullanılmayacağını, özel serileştirme için bir vekili ve çalışma zamanında eşleme xsi:type bildirimleri için alternatifi belirtir.

public:
 DataContractSerializer(Type ^ type, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System::Runtime::Serialization::IDataContractSurrogate ^ dataContractSurrogate, System::Runtime::Serialization::DataContractResolver ^ dataContractResolver);
public DataContractSerializer (Type type, System.Collections.Generic.IEnumerable<Type> knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System.Runtime.Serialization.IDataContractSurrogate dataContractSurrogate, System.Runtime.Serialization.DataContractResolver dataContractResolver);
new System.Runtime.Serialization.DataContractSerializer : Type * seq<Type> * int * bool * bool * System.Runtime.Serialization.IDataContractSurrogate * System.Runtime.Serialization.DataContractResolver -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, knownTypes As IEnumerable(Of Type), maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, preserveObjectReferences As Boolean, dataContractSurrogate As IDataContractSurrogate, dataContractResolver As DataContractResolver)

Parametreler

type
Type

Seri hale getirilmiş veya seri durumdan çıkarılmış örneklerin türü.

knownTypes
IEnumerable<Type>

Type Nesne IEnumerable<T> grafında mevcut olabilecek bilinen türleri içeren bir öğesi.

maxItemsInObjectGraph
Int32

Grafikteki seri hale getirilmeye veya seri durumdan çıkarılırken en fazla öğe sayısı. Varsayılan değer , Int32.MaxValue özelliği tarafından döndürülen değerdir.

ignoreExtensionDataObject
Boolean

true serileştirme ve seri durumdan çıkarma sonrasında türün bir uzantısı tarafından sağlanan verileri yoksaymak için; aksi takdirde , false.

preserveObjectReferences
Boolean

true nesne başvuru verilerini korumak için standart olmayan XML yapılarını kullanmak; aksi takdirde , false.

dataContractSurrogate
IDataContractSurrogate

IDataContractSurrogate Serileştirme işlemini özelleştirmek için uygulaması.

dataContractResolver
DataContractResolver

Bildirimleri veri sözleşmesi türleriyle eşlemek xsi:type için uygulamasıDataContractResolver.

Açıklamalar

Uyarı

Bu yöntem Windows Mağazası uygulamalarında kullanılamaz.

Şunlara uygulanır

DataContractSerializer(Type, String, String, IEnumerable<Type>)

Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca iki dize parametresinde kök XML öğesini ve ad alanını ve nesne grafında mevcut olabilecek bilinen türlerin listesini belirtir.

public:
 DataContractSerializer(Type ^ type, System::String ^ rootName, System::String ^ rootNamespace, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes);
public DataContractSerializer (Type type, string rootName, string rootNamespace, System.Collections.Generic.IEnumerable<Type> knownTypes);
public DataContractSerializer (Type type, string rootName, string rootNamespace, System.Collections.Generic.IEnumerable<Type>? knownTypes);
new System.Runtime.Serialization.DataContractSerializer : Type * string * string * seq<Type> -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As String, rootNamespace As String, knownTypes As IEnumerable(Of Type))

Parametreler

type
Type

Seri hale getirilmiş veya seri durumdan çıkarılmış örneklerin türü.

rootName
String

İçeriğin kök öğe adı.

rootNamespace
String

Kök öğenin ad alanı.

knownTypes
IEnumerable<Type>

Type Nesne IEnumerable<T> grafında bulunabilecek türleri içeren bir öğesi.

Örnekler

Aşağıdaki örnek, seri hale getirilmeye veya seri durumdan çıkarma türüne ek olarak XML belgesinden okunacak veya xml belgesine yazacak XML adını ve ad alanını belirten bir örneğini DataContractSerializer oluşturur. Kod ayrıca serileştirme veya seri durumdan çıkarma sırasında kullanılan bilinen türleri içeren bir IEnumerable<T> örneğini oluşturur.

public static void Constructor5()
{
    // Create a generic List of types and add the known types
    // to the collection.
    List<Type> knownTypeList = new List<Type>();
    knownTypeList.Add(typeof(PurchaseOrder));
    knownTypeList.Add(typeof(PurchaseOrderV3));

    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        "Customer",
        @"http://www.contoso.com",
        knownTypeList);

    // Other code not shown.
}
Public Shared Sub Constructor5() 

    ' Create a generic List of types and add the known types
    ' to the collection.
    Dim knownTypeList As New List(Of Type)
    knownTypeList.Add(GetType(PurchaseOrder))
    knownTypeList.Add(GetType(PurchaseOrderV3))
    
    Dim ser As New DataContractSerializer(GetType(Person), _
    "Customer", _
    "http://www.contoso.com", _
    knownTypeList)

    ' Other code not shown.

End Sub

Ayrıca bkz.

Şunlara uygulanır

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)

Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs

türündeki DataContractSerializer parametreler aracılığıyla belirtilen XML kök öğesini ve ad alanını kullanarak belirtilen türdeki bir nesneyi serileştirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini XmlDictionaryStringbaşlatır.

public:
 DataContractSerializer(Type ^ type, System::Xml::XmlDictionaryString ^ rootName, System::Xml::XmlDictionaryString ^ rootNamespace);
public DataContractSerializer (Type type, System.Xml.XmlDictionaryString rootName, System.Xml.XmlDictionaryString rootNamespace);
new System.Runtime.Serialization.DataContractSerializer : Type * System.Xml.XmlDictionaryString * System.Xml.XmlDictionaryString -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As XmlDictionaryString, rootNamespace As XmlDictionaryString)

Parametreler

type
Type

Seri hale getirilmiş veya seri durumdan çıkarılmış örneklerin türü.

rootName
XmlDictionaryString

XmlDictionaryString İçeriğin kök öğe adını içeren bir.

rootNamespace
XmlDictionaryString

XmlDictionaryString Kök öğenin ad alanını içeren bir.

Örnekler

Aşağıdaki örnek, seri hale getirilmeye veya seri durumdan çıkarma türüne ek olarak XML belgesinden okunacak veya XML belgesine yazacak XML adını ve ad alanını (nesneler olarakXmlDictionaryString) belirten bir örneğini DataContractSerializer oluşturur.

public static void Constructor4()
{
    // Create an instance of the DataContractSerializer
    // specifying the type, and name and
    // namespace as XmlDictionaryString objects.

    // Create an XmlDictionary and add values to it.
    XmlDictionary d = new XmlDictionary();
    XmlDictionaryString name_value = d.Add("Customer");
    XmlDictionaryString ns_value = d.Add("http://www.contoso.com");

    // Create the serializer.
    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        name_value,
        ns_value);
    // Other code not shown.
}
Public Shared Sub Constructor4() 
    ' Create an instance of the DataContractSerializer
    ' specifying the type, and name and 
    ' namespace as XmlDictionaryString objects.
    ' Create an XmlDictionary and add values to it.
    Dim d As New XmlDictionary()
    Dim name_value As XmlDictionaryString = d.Add("Customer")
    Dim ns_value As XmlDictionaryString = d.Add("http://www.contoso.com")
    
    ' Create the serializer.
    Dim ser As New DataContractSerializer(GetType(Person), _
    name_value, _
    ns_value)

    ' Other code not shown.
End Sub

Şunlara uygulanır

DataContractSerializer(Type, String, String)

Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs

Sağlanan XML kök öğesini ve ad alanını kullanarak belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır.

public:
 DataContractSerializer(Type ^ type, System::String ^ rootName, System::String ^ rootNamespace);
public DataContractSerializer (Type type, string rootName, string rootNamespace);
new System.Runtime.Serialization.DataContractSerializer : Type * string * string -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As String, rootNamespace As String)

Parametreler

type
Type

Seri hale getirilmiş veya seri durumdan çıkarılmış örneklerin türü.

rootName
String

Seri hale getirmek veya seri durumdan çıkarabilmek için içeriği kapsayan XML öğesinin adı.

rootNamespace
String

Seri hale getirmek veya seri durumdan çıkarabilmek için içeriği kapsayan XML öğesinin ad alanı.

Örnekler

Aşağıdaki örnek, seri hale getirilmeye veya seri durumdan çıkarma türüne ek olarak XML belgesinden okunacak veya xml belgesine yazacak XML adını ve ad alanını belirten bir örneğini DataContractSerializer oluşturur.

public static void Constructor3()
{
    // Create an instance of the DataContractSerializer
    // specifying the type, and name and
    // namespace as strings.
    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        "Customer",
        "http://www.contoso.com");

    // Other code not shown.
}
Public Shared Sub Constructor3() 
    ' Create an instance of the DataContractSerializer
    ' specifying the type, and name and 
    ' namespace as strings.
    Dim ser As New DataContractSerializer(GetType(Person), _
    "Customer", _
    "http://www.contoso.com")

    ' Other code not shown.
End Sub

Şunlara uygulanır

DataContractSerializer(Type, DataContractSerializerSettings)

Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs

Belirtilen tür ve ayarlardaki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır.

public:
 DataContractSerializer(Type ^ type, System::Runtime::Serialization::DataContractSerializerSettings ^ settings);
public DataContractSerializer (Type type, System.Runtime.Serialization.DataContractSerializerSettings settings);
public DataContractSerializer (Type type, System.Runtime.Serialization.DataContractSerializerSettings? settings);
new System.Runtime.Serialization.DataContractSerializer : Type * System.Runtime.Serialization.DataContractSerializerSettings -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, settings As DataContractSerializerSettings)

Parametreler

type
Type

Seri hale getirilmeye veya seri durumdan çıkarılır örneğin türü.

settings
DataContractSerializerSettings

Seri hale getirici ayarları.

Şunlara uygulanır

DataContractSerializer(Type, IEnumerable<Type>)

Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs

Belirtilen türdeki DataContractSerializer bir nesneyi serileştirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini ve nesne grafında mevcut olabilecek bilinen türlerden oluşan bir koleksiyonu başlatır.

public:
 DataContractSerializer(Type ^ type, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes);
public DataContractSerializer (Type type, System.Collections.Generic.IEnumerable<Type> knownTypes);
public DataContractSerializer (Type type, System.Collections.Generic.IEnumerable<Type>? knownTypes);
new System.Runtime.Serialization.DataContractSerializer : Type * seq<Type> -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, knownTypes As IEnumerable(Of Type))

Parametreler

type
Type

Seri hale getirilmiş veya seri durumdan çıkarılmış örneklerin türü.

knownTypes
IEnumerable<Type>

Type Nesne IEnumerable<T> grafında bulunabilecek türleri içeren bir öğesi.

Örnekler

Aşağıdaki örnek, seri hale getirilecek veya seri durumdan çıkarılacak türü belirten bir örneği DataContractSerializer ve nesne grafında kullanılabilecek bilinen türlerden oluşan bir koleksiyon oluşturur.

public static void Constructor2()
{
    // Create a generic List of types and add the known types
    // to the collection.
    List<Type> knownTypeList = new List<Type>();
    knownTypeList.Add(typeof(PurchaseOrder));
    knownTypeList.Add(typeof(PurchaseOrderV3));

    // Create a DatatContractSerializer with the collection.
    DataContractSerializer ser2 = new DataContractSerializer(
        typeof(Orders), knownTypeList);

    // Other code not shown.
}
 Public Shared Sub Constructor2() 

     ' Create a generic List of types and add the known types
     ' to the collection.
     Dim knownTypeList As New List(Of Type)
     knownTypeList.Add(GetType(PurchaseOrder))
     knownTypeList.Add(GetType(PurchaseOrderV3))
     
     ' Create a DatatContractSerializer with the collection.
     Dim ser2 As New DataContractSerializer(GetType(Orders), knownTypeList)

     ' Other code not shown.
End Sub

Ayrıca bkz.

Şunlara uygulanır

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>)

Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs
Kaynak:
DataContractSerializer.cs

Belirtilen türdeki DataContractSerializer bir nesneyi seri hale getirmek veya seri durumdan çıkarabilmek için sınıfının yeni bir örneğini başlatır. Bu yöntem ayrıca iki XmlDictionaryString parametrede kök XML öğesini ve ad alanını ve nesne grafında mevcut olabilecek bilinen türlerin listesini belirtir.

public:
 DataContractSerializer(Type ^ type, System::Xml::XmlDictionaryString ^ rootName, System::Xml::XmlDictionaryString ^ rootNamespace, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes);
public DataContractSerializer (Type type, System.Xml.XmlDictionaryString rootName, System.Xml.XmlDictionaryString rootNamespace, System.Collections.Generic.IEnumerable<Type> knownTypes);
public DataContractSerializer (Type type, System.Xml.XmlDictionaryString rootName, System.Xml.XmlDictionaryString rootNamespace, System.Collections.Generic.IEnumerable<Type>? knownTypes);
new System.Runtime.Serialization.DataContractSerializer : Type * System.Xml.XmlDictionaryString * System.Xml.XmlDictionaryString * seq<Type> -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As XmlDictionaryString, rootNamespace As XmlDictionaryString, knownTypes As IEnumerable(Of Type))

Parametreler

type
Type

Seri hale getirilmiş veya seri durumdan çıkarılmış örneklerin türü.

rootName
XmlDictionaryString

XmlDictionaryString İçeriğin kök öğe adını içeren bir.

rootNamespace
XmlDictionaryString

XmlDictionaryString Kök öğenin ad alanını içeren bir.

knownTypes
IEnumerable<Type>

IEnumerable<T> Type Nesne grafında bulunabilecek bilinen türleri içeren bir öğesi.

Örnekler

Aşağıdaki örnek, seri hale getirilmeye veya seri durumdan çıkarma türüne ek olarak XML belgesinden okunacak veya XML belgesine yazacak XML adını ve ad alanını (nesneler olarakXmlDictionaryString) belirten bir örneğini DataContractSerializer oluşturur. Kod ayrıca serileştirme veya seri durumdan çıkarma sırasında kullanılan bilinen türleri içeren bir IEnumerable<T> örneğini oluşturur.

public static void Constructor6()
{
    // Create a generic List of types and add the known types
    // to the collection.
    List<Type> knownTypeList = new List<Type>();
    knownTypeList.Add(typeof(PurchaseOrder));
    knownTypeList.Add(typeof(PurchaseOrderV3));

    // Create an XmlDictionary and add values to it.
    XmlDictionary d = new XmlDictionary();
    XmlDictionaryString name_value = d.Add("Customer");
    XmlDictionaryString ns_value = d.Add("http://www.contoso.com");

    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        name_value,
        ns_value,
        knownTypeList);

    // Other code not shown.
}
Public Shared Sub Constructor6() 
    ' Create a generic List of types and add the known types
    ' to the collection.
    Dim knownTypeList As New List(Of Type)
    knownTypeList.Add(GetType(PurchaseOrder))
    knownTypeList.Add(GetType(PurchaseOrderV3))

    ' Create an XmlDictionary and add values to it.
    Dim d As New XmlDictionary()
    Dim name_value As XmlDictionaryString = d.Add("Customer")
    Dim ns_value As XmlDictionaryString = d.Add("http://www.contoso.com")
    
    Dim ser As New DataContractSerializer(GetType(Person), _
    name_value, _
    ns_value, _
    knownTypeList)

    ' Other code not shown.
 End Sub

Ayrıca bkz.

Şunlara uygulanır