Compartir a través de


DataContractSerializer Constructores

Definición

Inicializa una nueva instancia de la clase DataContractSerializer.

Sobrecargas

DataContractSerializer(Type)

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado.

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos, el número máximo de elementos de gráfico a serializar, parámetros para omitir los datos inesperados, si usar construcciones XML no estándar para conservar los datos de referencia a objeto en el gráfico, un suplente para la serialización personalizada, parámetros de XmlDictionaryString que especifican el elemento XML y el espacio de nombres que incluye el contenido y una alternativa para asignar las declaraciones xsi:type en tiempo de ejecución.

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos, el número máximo de elementos de gráfico a serializar, parámetros para omitir los datos inesperados, si usar construcciones XML no estándar para conservar los datos de referencia a objeto en el gráfico, un suplente para la serialización personalizada, el elemento XML y el espacio de nombres que incluye el contenido y una alternativa para asignar las declaraciones xsi:type en tiempo de ejecución.

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos, el número máximo de elementos de gráfico a serializar, parámetros para omitir los datos inesperados, si utilizar construcciones XML no estándar para conservar los datos de referencia a objeto en el gráfico, un suplente para la serialización personalizada y parámetros de XmlDictionaryString que especifican el elemento y el espacio de nombres XML que incluyen el contenido.

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos, el número máximo de elementos de gráfico a serializar, parámetros para omitir los datos inesperados, si utilizar construcciones XML no estándar para conservar los datos de referencia a objeto en el gráfico, un suplente para la serialización personalizada, así como el elemento y el espacio de nombres XML que incluyen el contenido.

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos, el número máximo de elementos de gráfico a serializar, parámetros para omitir los datos inesperados, si utilizar construcciones XML no estándar para conservar los datos de referencia a objeto en el gráfico, y un suplente para la serialización personalizada.

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos, el número máximo de elementos de gráfico a serializar, parámetros para omitir los datos inesperados, si usar construcciones XML no estándar para conservar los datos de referencia a objeto en el gráfico, un suplente para la serialización personalizada, y una alternativa para asignar las declaraciones xsi:type en tiempo de ejecución.

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica el elemento raíz y el espacio de nombres XML en dos parámetros de cadena así como una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos.

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado utilizando el elemento raíz XML y el espacio de nombres especificados mediante los parámetros del tipo XmlDictionaryString.

DataContractSerializer(Type, String, String)

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado utilizando el elemento raíz y el espacio de nombres XML proporcionados.

DataContractSerializer(Type, DataContractSerializerSettings)

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo y configuración especificados.

DataContractSerializer(Type, IEnumerable<Type>)

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado y una colección de tipos conocidos que pueden encontrarse en el gráfico de objetos.

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica el elemento raíz y el espacio de nombres XML en dos parámetros XmlDictionaryString así como una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos.

DataContractSerializer(Type)

Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado.

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

Parámetros

type
Type

Tipo de las instancias serializadas o deserializadas.

Ejemplos

En el ejemplo siguiente se crea una instancia de DataContractSerializer que especifica el tipo que se debe serializar o deserializar.

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

Se aplica a

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos, el número máximo de elementos de gráfico a serializar, parámetros para omitir los datos inesperados, si usar construcciones XML no estándar para conservar los datos de referencia a objeto en el gráfico, un suplente para la serialización personalizada, parámetros de XmlDictionaryString que especifican el elemento XML y el espacio de nombres que incluye el contenido y una alternativa para asignar las declaraciones xsi:type en tiempo de ejecución.

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)

Parámetros

type
Type

Tipo de las instancias serializadas o deserializadas.

rootName
XmlDictionaryString

El elemento XML que incluye el contenido para serializar o deserializar.

rootNamespace
XmlDictionaryString

El espacio de nombres del elemento XML que incluye el contenido para serializar o deserializar.

knownTypes
IEnumerable<Type>

IEnumerable<T> de Type que contiene los tipos conocidos que pueden encontrarse en el gráfico de objetos.

maxItemsInObjectGraph
Int32

Número máximo de elementos del gráfico que se van a serializar o deserializar.

ignoreExtensionDataObject
Boolean

true para omitir los datos proporcionados por una extensión del tipo en la serialización y deserialización; de lo contrario, false.

preserveObjectReferences
Boolean

true para utilizar construcciones XML no estándar para conservar los datos de referencia a objeto; de lo contrario, false.

dataContractSurrogate
IDataContractSurrogate

Implementación de IDataContractSurrogate para personalizar el proceso de serialización.

dataContractResolver
DataContractResolver

Implementación de DataContractResolver para asignar las declaraciones xsi:type a los tipos de contrato de datos.

Se aplica a

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos, el número máximo de elementos de gráfico a serializar, parámetros para omitir los datos inesperados, si usar construcciones XML no estándar para conservar los datos de referencia a objeto en el gráfico, un suplente para la serialización personalizada, el elemento XML y el espacio de nombres que incluye el contenido y una alternativa para asignar las declaraciones xsi:type en tiempo de ejecución.

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)

Parámetros

type
Type

Tipo de las instancias serializadas o deserializadas.

rootName
String

El elemento XML que incluye el contenido para serializar o deserializar.

rootNamespace
String

El espacio de nombres del elemento XML que incluye el contenido para serializar o deserializar.

knownTypes
IEnumerable<Type>

IEnumerable<T> de Type que contiene los tipos conocidos que pueden encontrarse en el gráfico de objetos.

maxItemsInObjectGraph
Int32

Número máximo de elementos del gráfico que se van a serializar o deserializar.

ignoreExtensionDataObject
Boolean

true para omitir los datos proporcionados por una extensión del tipo en la serialización y deserialización; de lo contrario, false.

preserveObjectReferences
Boolean

true para utilizar construcciones XML no estándar para conservar los datos de referencia a objeto; de lo contrario, false.

dataContractSurrogate
IDataContractSurrogate

Implementación de IDataContractSurrogate para personalizar el proceso de serialización.

dataContractResolver
DataContractResolver

Implementación de DataContractResolver para asignar las declaraciones xsi:type a los tipos de contrato de datos.

Se aplica a

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos, el número máximo de elementos de gráfico a serializar, parámetros para omitir los datos inesperados, si utilizar construcciones XML no estándar para conservar los datos de referencia a objeto en el gráfico, un suplente para la serialización personalizada y parámetros de XmlDictionaryString que especifican el elemento y el espacio de nombres XML que incluyen el contenido.

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)

Parámetros

type
Type

Tipo de las instancias serializadas o deserializadas.

rootName
XmlDictionaryString

XmlDictionaryString que especifica el elemento XML que contiene el contenido para serializar o deserializar.

rootNamespace
XmlDictionaryString

XmlDictionaryString que especifica el espacio de nombres de la raíz XML.

knownTypes
IEnumerable<Type>

IEnumerable<T> de Type que contiene los tipos conocidos que pueden encontrarse en el gráfico de objetos.

maxItemsInObjectGraph
Int32

Número máximo de elementos del gráfico que se van a serializar o deserializar.

ignoreExtensionDataObject
Boolean

true para omitir los datos proporcionados por una extensión del tipo en la serialización y deserialización; de lo contrario, false.

preserveObjectReferences
Boolean

true para utilizar construcciones XML no estándar para conservar los datos de referencia a objeto; de lo contrario, false.

dataContractSurrogate
IDataContractSurrogate

Implementación de IDataContractSurrogate para personalizar el proceso de serialización.

Excepciones

El número de elementos supera el valor máximo.

Ejemplos

El ejemplo siguiente crea una instancia de DataContractSerializer que especifica el tipo a serializar o deserializar, el elemento raíz y el espacio de nombres XML (como parámetros XmlDictionaryString) y una instancia de IEnumerable<T> que contiene los tipos utilizados durante la deserialización. El código también establece los ignoreExtensionDataObject parámetros y preserveObjectReferences en y especifica una implementación de la IDataContractSurrogate interfaz para controlar los tipos heredados true(tipos que no tienen aplicado el DataContractAttribute atributo). Para obtener más información, consulte la documentación de IDataContractSurrogate .

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

Consulte también

Se aplica a

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos, el número máximo de elementos de gráfico a serializar, parámetros para omitir los datos inesperados, si utilizar construcciones XML no estándar para conservar los datos de referencia a objeto en el gráfico, un suplente para la serialización personalizada, así como el elemento y el espacio de nombres XML que incluyen el contenido.

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)

Parámetros

type
Type

Tipo de las instancias serializadas o deserializadas.

rootName
String

El elemento XML que incluye el contenido para serializar o deserializar.

rootNamespace
String

El espacio de nombres del elemento XML que incluye el contenido para serializar o deserializar.

knownTypes
IEnumerable<Type>

IEnumerable<T> de Type que contiene los tipos conocidos que pueden encontrarse en el gráfico de objetos.

maxItemsInObjectGraph
Int32

Número máximo de elementos del gráfico que se van a serializar o deserializar.

ignoreExtensionDataObject
Boolean

true para omitir los datos proporcionados por una extensión del tipo en la serialización y deserialización; de lo contrario, false.

preserveObjectReferences
Boolean

true para utilizar construcciones XML no estándar para conservar los datos de referencia a objeto; de lo contrario, false.

dataContractSurrogate
IDataContractSurrogate

Implementación de IDataContractSurrogate para personalizar el proceso de serialización.

Excepciones

El número de elementos supera el valor máximo.

Ejemplos

El ejemplo siguiente crea una instancia de DataContractSerializer que especifica el tipo a serializar o deserializar, el elemento raíz y el espacio de nombres XML y una instancia de IEnumerable<T> que contiene los tipos utilizados durante la deserialización. El código también establece los ignoreExtensionDataObject parámetros y preserveObjectReferences en y especifica una implementación de la IDataContractSurrogate interfaz para controlar los tipos heredados true(tipos que no tienen aplicado el DataContractAttribute atributo). Para obtener más información, consulte la documentación de IDataContractSurrogate .

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

Consulte también

Se aplica a

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos, el número máximo de elementos de gráfico a serializar, parámetros para omitir los datos inesperados, si utilizar construcciones XML no estándar para conservar los datos de referencia a objeto en el gráfico, y un suplente para la serialización personalizada.

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)

Parámetros

type
Type

Tipo de las instancias serializadas o deserializadas.

knownTypes
IEnumerable<Type>

IEnumerable<T> de Type que contiene los tipos conocidos que pueden encontrarse en el gráfico de objetos.

maxItemsInObjectGraph
Int32

Número máximo de elementos del gráfico que se van a serializar o deserializar. El valor predeterminado es el que devuelve la propiedad Int32.MaxValue .

ignoreExtensionDataObject
Boolean

true para omitir los datos proporcionados por una extensión del tipo en la serialización y deserialización; de lo contrario, false.

preserveObjectReferences
Boolean

true para utilizar construcciones XML no estándar para conservar los datos de referencia a objeto; de lo contrario, false.

dataContractSurrogate
IDataContractSurrogate

Implementación de IDataContractSurrogate para personalizar el proceso de serialización.

Excepciones

El número de elementos supera el valor máximo.

Ejemplos

En el ejemplo siguiente se crea una instancia de DataContractSerializer que especifica el tipo que se va a serializar o deserializar y una instancia de IEnumerable<T> para contener los tipos conocidos utilizados durante la serialización o la deserialización. El código también establece los ignoreExtensionDataObject parámetros y preserveObjectReferences en y especifica una implementación de la IDataContractSurrogate interfaz para controlar los tipos heredados true(tipos que no tienen aplicado el DataContractAttribute atributo ). Para obtener más información, consulte la documentación de IDataContractSurrogate .

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

Consulte también

Se aplica a

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

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos, el número máximo de elementos de gráfico a serializar, parámetros para omitir los datos inesperados, si usar construcciones XML no estándar para conservar los datos de referencia a objeto en el gráfico, un suplente para la serialización personalizada, y una alternativa para asignar las declaraciones xsi:type en tiempo de ejecución.

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)

Parámetros

type
Type

Tipo de las instancias serializadas o deserializadas.

knownTypes
IEnumerable<Type>

IEnumerable<T> de Type que contiene los tipos conocidos que pueden encontrarse en el gráfico de objetos.

maxItemsInObjectGraph
Int32

Número máximo de elementos del gráfico que se van a serializar o deserializar. El valor predeterminado es el que devuelve la propiedad Int32.MaxValue .

ignoreExtensionDataObject
Boolean

true para omitir los datos proporcionados por una extensión del tipo en la serialización y deserialización; de lo contrario, false.

preserveObjectReferences
Boolean

true para utilizar construcciones XML no estándar para conservar los datos de referencia a objeto; de lo contrario, false.

dataContractSurrogate
IDataContractSurrogate

Implementación de IDataContractSurrogate para personalizar el proceso de serialización.

dataContractResolver
DataContractResolver

Implementación de DataContractResolver para asignar las declaraciones xsi:type a los tipos de contrato de datos.

Comentarios

Advertencia

Este método no está disponible en las aplicaciones de la Tienda Windows.

Se aplica a

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

Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica el elemento raíz y el espacio de nombres XML en dos parámetros de cadena así como una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos.

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))

Parámetros

type
Type

Tipo de las instancias serializadas o deserializadas.

rootName
String

El nombre del elemento raíz del contenido.

rootNamespace
String

El espacio de nombres del elemento raíz.

knownTypes
IEnumerable<Type>

IEnumerable<T> de Type que contiene los tipos que pueden estar presentes en el gráfico de objetos.

Ejemplos

En el ejemplo siguiente se crea una instancia de DataContractSerializer que especifica el tipo que se va a serializar o deserializar así como el nombre y el espacio de nombres XML que se leerán del documento XML o que se escribirán en él. El código también crea una instancia de IEnumerable<T> para contener los tipos conocidos utilizados durante la serialización o la deserialización.

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

Consulte también

Se aplica a

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)

Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado utilizando el elemento raíz XML y el espacio de nombres especificados mediante los parámetros del tipo XmlDictionaryString.

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)

Parámetros

type
Type

Tipo de las instancias serializadas o deserializadas.

rootName
XmlDictionaryString

XmlDictionaryString que contiene el nombre del elemento raíz del contenido.

rootNamespace
XmlDictionaryString

XmlDictionaryString que contiene el espacio de nombres del elemento raíz.

Ejemplos

En el ejemplo siguiente se crea una instancia de DataContractSerializer que especifica el tipo que se va a serializar o deserializar así como el nombre y el espacio de nombres (como objetos XmlDictionaryString) que se leerán del documento XML o que se escribirán en él.

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

Se aplica a

DataContractSerializer(Type, String, String)

Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado utilizando el elemento raíz y el espacio de nombres XML proporcionados.

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)

Parámetros

type
Type

Tipo de las instancias serializadas o deserializadas.

rootName
String

El nombre del elemento XML que incluye el contenido para serializar o deserializar.

rootNamespace
String

El espacio de nombres del elemento XML que incluye el contenido para serializar o deserializar.

Ejemplos

En el ejemplo siguiente se crea una instancia de DataContractSerializer que especifica el tipo que se va a serializar o deserializar así como el nombre y el espacio de nombres XML que se leerán del documento XML o que se escribirán en él.

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

Se aplica a

DataContractSerializer(Type, DataContractSerializerSettings)

Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo y configuración especificados.

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)

Parámetros

type
Type

Tipo de las instancias que se serializan o se deserializan.

settings
DataContractSerializerSettings

Configuración del serializador

Se aplica a

DataContractSerializer(Type, IEnumerable<Type>)

Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado y una colección de tipos conocidos que pueden encontrarse en el gráfico de objetos.

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))

Parámetros

type
Type

Tipo de las instancias serializadas o deserializadas.

knownTypes
IEnumerable<Type>

IEnumerable<T> de Type que contiene los tipos que pueden estar presentes en el gráfico de objetos.

Ejemplos

En el ejemplo siguiente se crea una instancia de DataContractSerializer que especifica el tipo que se va a serializar o deserializar y una colección de tipos conocidos que se pueden utilizar en el gráfico de objetos.

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

Consulte también

Se aplica a

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

Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs
Source:
DataContractSerializer.cs

Inicializa una nueva instancia de la clase DataContractSerializer para serializar o deserializar un objeto del tipo especificado. Este método también especifica el elemento raíz y el espacio de nombres XML en dos parámetros XmlDictionaryString así como una lista de tipos conocidos que pueden encontrarse en el gráfico de objetos.

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))

Parámetros

type
Type

Tipo de las instancias serializadas o deserializadas.

rootName
XmlDictionaryString

XmlDictionaryString que contiene el nombre del elemento raíz del contenido.

rootNamespace
XmlDictionaryString

XmlDictionaryString que contiene el espacio de nombres del elemento raíz.

knownTypes
IEnumerable<Type>

IEnumerable<T> de Type que contiene los tipos conocidos que pueden encontrarse en el gráfico de objetos.

Ejemplos

En el ejemplo siguiente se crea una instancia de DataContractSerializer que especifica el tipo que se va a serializar o deserializar así como el nombre y el espacio de nombres (como objetos XmlDictionaryString) que se leerán del documento XML o que se escribirán en él. El código también crea una instancia de IEnumerable<T> para contener los tipos conocidos utilizados durante la serialización o la deserialización.

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

Consulte también

Se aplica a