DataContractSerializer Construtores
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Inicializa uma nova instância da classe DataContractSerializer.
Sobrecargas
DataContractSerializer(Type) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica uma lista de tipos conhecidos que podem estar presentes no grafo de objeto, o número máximo de itens de grafo a serem serializados, os parâmetros para ignorar dados inesperados, a decisão de usar ou não constructos XML não padrão para preservar os dados de referência do objeto no grafo, um substituto para a serialização personalizada, parâmetros desse XmlDictionaryString que especificam o elemento XML e o namespace que contêm o conteúdo e uma alternativa para mapear declarações |
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica uma lista de tipos conhecidos que podem estar presentes no grafo de objeto, o número máximo de itens de grafo a serem serializados, os parâmetros para ignorar dados inesperados, a decisão de usar ou não constructos XML não padrão para preservar os dados de referência do objeto no grafo, um substituto para a serialização personalizada, o elemento XML e o namespace que contêm o conteúdo e uma alternativa para mapear declarações |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica uma lista de tipos conhecidos que podem estar presentes no grafo de objeto, o número máximo de itens de grafo a serem serializados, os parâmetros para ignorar dados inesperados, a decisão de usar ou não constructos XML não padrão para preservar os dados de referência do objeto no grafo, um substituto para a serialização personalizada e parâmetros do XmlDictionaryString que especificam o namespace e o elemento XML que contêm o conteúdo. |
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica uma lista de tipos conhecidos que podem estar presentes no grafo de objeto, o número máximo de itens de grafo a serem serializados, os parâmetros para ignorar dados inesperados, a decisão de usar ou não constructos XML não padrão para preservar os dados de referência do objeto no grafo, um substituto para a serialização personalizada e o namespace e o elemento XML que contêm o conteúdo. |
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica uma lista de tipos conhecidos que podem estar presentes no grafo de objeto, o número máximo de itens de grafo a serem serializados, os parâmetros para ignorar dados inesperados, a decisão de usar ou não constructos XML não padrão para preservar os dados de referência do objeto no grafo e um substituto para a serialização personalizada. |
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica uma lista de tipos conhecidos que podem estar presentes no grafo de objeto, o número máximo de itens de grafo a serem serializados, os parâmetros para ignorar dados inesperados, a decisão de usar ou não constructos XML não padrão para preservar os dados de referência do objeto no grafo, um substituto para a serialização personalizada e uma alternativa para mapear declarações |
DataContractSerializer(Type, String, String, IEnumerable<Type>) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica o elemento XML raiz e o namespace em dois parâmetros de cadeia de caracteres, bem como uma lista de tipos conhecidos que podem estar presentes no grafo do objeto. |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado usando o namespace e o elemento raiz XML por meio de parâmetros do tipo XmlDictionaryString. |
DataContractSerializer(Type, String, String) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado usando o namespace e o elemento raiz XML fornecidos. |
DataContractSerializer(Type, DataContractSerializerSettings) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo e das configurações especificadas. |
DataContractSerializer(Type, IEnumerable<Type>) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especifico e uma coleção de tipos conhecidos que podem existir no grafo do objeto. |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>) |
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica o elemento XML raiz e o namespace em dois parâmetros XmlDictionaryString, bem como uma lista de tipos conhecidos que podem estar presentes no grafo do objeto. |
DataContractSerializer(Type)
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do 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
O tipo das instâncias serializadas ou desserializadas.
Exemplos
O exemplo a seguir cria uma instância do DataContractSerializer que especifica o tipo para serializar ou desserializar.
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
Aplica-se a
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica uma lista de tipos conhecidos que podem estar presentes no grafo de objeto, o número máximo de itens de grafo a serem serializados, os parâmetros para ignorar dados inesperados, a decisão de usar ou não constructos XML não padrão para preservar os dados de referência do objeto no grafo, um substituto para a serialização personalizada, parâmetros desse XmlDictionaryString que especificam o elemento XML e o namespace que contêm o conteúdo e uma alternativa para mapear declarações xsi:type
em tempo de execução.
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
O tipo das instâncias serializadas ou desserializadas.
- rootName
- XmlDictionaryString
O elemento XML que inclui o conteúdo a ser serializado ou desserializado.
- rootNamespace
- XmlDictionaryString
O namespace do elemento XML que inclui o conteúdo a ser serializado ou desserializado.
- knownTypes
- IEnumerable<Type>
Um IEnumerable<T> de Type que contém os tipos conhecidos que podem estar presentes no gráfico de objeto.
- maxItemsInObjectGraph
- Int32
O número máximo de itens no grafo a serem serializados ou desserializados.
- ignoreExtensionDataObject
- Boolean
true
para ignorar os dados fornecidos por uma extensão do tipo durante a serialização e desserialização, caso contrário, false
.
- preserveObjectReferences
- Boolean
true
para usar constructos XML não padrão para preservar os dados de referência de objeto, caso contrário, false
.
- dataContractSurrogate
- IDataContractSurrogate
Uma implementação do IDataContractSurrogate para personalizar o processo de serialização.
- dataContractResolver
- DataContractResolver
Uma implementação de DataContractResolver para mapear declarações xsi:type
para tipos de contrato de dados.
Aplica-se a
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica uma lista de tipos conhecidos que podem estar presentes no grafo de objeto, o número máximo de itens de grafo a serem serializados, os parâmetros para ignorar dados inesperados, a decisão de usar ou não constructos XML não padrão para preservar os dados de referência do objeto no grafo, um substituto para a serialização personalizada, o elemento XML e o namespace que contêm o conteúdo e uma alternativa para mapear declarações xsi:type
em tempo de execução.
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
O tipo das instâncias serializadas ou desserializadas.
- rootName
- String
O elemento XML que inclui o conteúdo a ser serializado ou desserializado.
- rootNamespace
- String
O namespace do elemento XML que inclui o conteúdo a ser serializado ou desserializado.
- knownTypes
- IEnumerable<Type>
Um IEnumerable<T> de Type que contém os tipos conhecidos que podem estar presentes no gráfico de objeto.
- maxItemsInObjectGraph
- Int32
O número máximo de itens no grafo a serem serializados ou desserializados.
- ignoreExtensionDataObject
- Boolean
true
para ignorar os dados fornecidos por uma extensão do tipo durante a serialização e desserialização, caso contrário, false
.
- preserveObjectReferences
- Boolean
true
para usar constructos XML não padrão para preservar os dados de referência de objeto, caso contrário, false
.
- dataContractSurrogate
- IDataContractSurrogate
Uma implementação do IDataContractSurrogate para personalizar o processo de serialização.
- dataContractResolver
- DataContractResolver
Uma implementação de DataContractResolver para mapear declarações xsi:type
para tipos de contrato de dados.
Aplica-se a
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica uma lista de tipos conhecidos que podem estar presentes no grafo de objeto, o número máximo de itens de grafo a serem serializados, os parâmetros para ignorar dados inesperados, a decisão de usar ou não constructos XML não padrão para preservar os dados de referência do objeto no grafo, um substituto para a serialização personalizada e parâmetros do XmlDictionaryString que especificam o namespace e o elemento XML que contêm o conteúdo.
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
O tipo das instâncias serializadas ou desserializadas.
- rootName
- XmlDictionaryString
O XmlDictionaryString que especifica o elemento XML que inclui o conteúdo a ser serializado ou desserializado.
- rootNamespace
- XmlDictionaryString
O XmlDictionaryString que especifica o namespace de XML da raiz.
- knownTypes
- IEnumerable<Type>
Um IEnumerable<T> de Type que contém os tipos conhecidos que podem estar presentes no grafo de objeto.
- maxItemsInObjectGraph
- Int32
O número máximo de itens no grafo a serem serializados ou desserializados.
- ignoreExtensionDataObject
- Boolean
true
para ignorar os dados fornecidos por uma extensão do tipo durante a serialização e desserialização, caso contrário, false
.
- preserveObjectReferences
- Boolean
true
para usar constructos XML não padrão para preservar os dados de referência de objeto, caso contrário, false
.
- dataContractSurrogate
- IDataContractSurrogate
Uma implementação do IDataContractSurrogate para personalizar o processo de serialização.
Exceções
O número de itens excede o valor máximo.
Exemplos
O exemplo a DataContractSerializer seguir cria uma instância do que especifica o tipo para serializar ou desserializar, o elemento XML raiz e o namespace (como XmlDictionaryString parâmetros) e uma instância de um IEnumerable<T> que contém os tipos usados durante a desserialização. O código também define os ignoreExtensionDataObject
parâmetros true
e preserveObjectReferences
como e especifica uma implementação da IDataContractSurrogate interface para lidar com tipos herdados (tipos que não têm o DataContractAttribute atributo aplicado). Para obter mais informações, consulte a documentação do 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
Confira também
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- IDataContractSurrogate
Aplica-se a
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica uma lista de tipos conhecidos que podem estar presentes no grafo de objeto, o número máximo de itens de grafo a serem serializados, os parâmetros para ignorar dados inesperados, a decisão de usar ou não constructos XML não padrão para preservar os dados de referência do objeto no grafo, um substituto para a serialização personalizada e o namespace e o elemento XML que contêm o conteúdo.
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
O tipo das instâncias serializadas ou desserializadas.
- rootName
- String
O elemento XML que inclui o conteúdo a ser serializado ou desserializado.
- rootNamespace
- String
O namespace do elemento XML que inclui o conteúdo a ser serializado ou desserializado.
- knownTypes
- IEnumerable<Type>
Um IEnumerable<T> de Type que contém os tipos conhecidos que podem estar presentes no gráfico de objeto.
- maxItemsInObjectGraph
- Int32
O número máximo de itens no grafo a serem serializados ou desserializados.
- ignoreExtensionDataObject
- Boolean
true
para ignorar os dados fornecidos por uma extensão do tipo durante a serialização e desserialização, caso contrário, false
.
- preserveObjectReferences
- Boolean
true
para usar constructos XML não padrão para preservar os dados de referência de objeto, caso contrário, false
.
- dataContractSurrogate
- IDataContractSurrogate
Uma implementação do IDataContractSurrogate para personalizar o processo de serialização.
Exceções
O número de itens excede o valor máximo.
Exemplos
O exemplo a DataContractSerializer seguir cria uma instância do que especifica o tipo para serializar ou desserializar, o elemento XML raiz e o namespace e uma instância de um IEnumerable<T> que contém os tipos usados durante a desserialização. O código também define os ignoreExtensionDataObject
parâmetros true
e preserveObjectReferences
como e especifica uma implementação da IDataContractSurrogate interface para lidar com tipos herdados (tipos que não têm o DataContractAttribute atributo aplicado). Para obter mais informações, consulte a documentação do 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
Confira também
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- KnownTypeAttribute
- IDataContractSurrogate
Aplica-se a
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica uma lista de tipos conhecidos que podem estar presentes no grafo de objeto, o número máximo de itens de grafo a serem serializados, os parâmetros para ignorar dados inesperados, a decisão de usar ou não constructos XML não padrão para preservar os dados de referência do objeto no grafo e um substituto para a serialização 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
O tipo das instâncias serializadas ou desserializadas.
- knownTypes
- IEnumerable<Type>
Um IEnumerable<T> de Type que contém os tipos conhecidos que podem estar presentes no gráfico de objeto.
- maxItemsInObjectGraph
- Int32
O número máximo de itens no grafo a serem serializados ou desserializados. O padrão é o valor retornado pela propriedade Int32.MaxValue .
- ignoreExtensionDataObject
- Boolean
true
para ignorar os dados fornecidos por uma extensão do tipo durante a serialização e desserialização, caso contrário, false
.
- preserveObjectReferences
- Boolean
true
para usar constructos XML não padrão para preservar os dados de referência de objeto, caso contrário, false
.
- dataContractSurrogate
- IDataContractSurrogate
Uma implementação do IDataContractSurrogate para personalizar o processo de serialização.
Exceções
O número de itens excede o valor máximo.
Exemplos
O exemplo a seguir cria uma instância do DataContractSerializer que especifica o tipo a ser serializado ou desserializado e uma instância de um IEnumerable<T> para conter os tipos conhecidos usados durante a serialização ou desserialização. O código também define os ignoreExtensionDataObject
parâmetros true
e preserveObjectReferences
como e especifica uma implementação da IDataContractSurrogate interface para lidar com tipos herdados (tipos que não têm o DataContractAttribute atributo aplicado). Para obter mais informações, consulte a documentação do 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
Confira também
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- KnownTypeAttribute
- IDataContractSurrogate
Aplica-se a
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica uma lista de tipos conhecidos que podem estar presentes no grafo de objeto, o número máximo de itens de grafo a serem serializados, os parâmetros para ignorar dados inesperados, a decisão de usar ou não constructos XML não padrão para preservar os dados de referência do objeto no grafo, um substituto para a serialização personalizada e uma alternativa para mapear declarações xsi:type
em tempo de execução.
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
O tipo das instâncias serializadas ou desserializadas.
- knownTypes
- IEnumerable<Type>
Um IEnumerable<T> de Type que contém os tipos conhecidos que podem estar presentes no gráfico de objeto.
- maxItemsInObjectGraph
- Int32
O número máximo de itens no grafo a serem serializados ou desserializados. O padrão é o valor retornado pela propriedade Int32.MaxValue .
- ignoreExtensionDataObject
- Boolean
true
para ignorar os dados fornecidos por uma extensão do tipo durante a serialização e desserialização, caso contrário, false
.
- preserveObjectReferences
- Boolean
true
para usar constructos XML não padrão para preservar os dados de referência de objeto, caso contrário, false
.
- dataContractSurrogate
- IDataContractSurrogate
Uma implementação do IDataContractSurrogate para personalizar o processo de serialização.
- dataContractResolver
- DataContractResolver
Uma implementação de DataContractResolver para mapear declarações xsi:type
para tipos de contrato de dados.
Comentários
Aviso
Esse método não está disponível em aplicativos da Windows Store.
Aplica-se a
DataContractSerializer(Type, String, String, IEnumerable<Type>)
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica o elemento XML raiz e o namespace em dois parâmetros de cadeia de caracteres, bem como uma lista de tipos conhecidos que podem estar presentes no grafo do objeto.
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
O tipo das instâncias serializadas ou desserializadas.
- rootName
- String
O nome do elemento raiz do conteúdo.
- rootNamespace
- String
O namespace do elemento raiz.
- knownTypes
- IEnumerable<Type>
Um IEnumerable<T> de Type que contém os tipos que podem estar presentes no grafo do objeto.
Exemplos
O exemplo a seguir cria uma instância do DataContractSerializer que especifica o tipo a ser serializado ou desserializado, bem como o nome XML e o namespace a serem lidos ou gravados no documento XML. O código também cria uma instância de um IEnumerable<T> para conter os tipos conhecidos usados durante a serialização ou desserialização.
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
Confira também
Aplica-se a
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado usando o namespace e o elemento raiz XML por meio de parâmetros do 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
O tipo das instâncias serializadas ou desserializadas.
- rootName
- XmlDictionaryString
Um XmlDictionaryString que contém o nome do elemento raiz do conteúdo.
- rootNamespace
- XmlDictionaryString
Um XmlDictionaryString que contém o namespace do elemento raiz.
Exemplos
O exemplo a seguir cria uma instância do DataContractSerializer que especifica o tipo a ser serializado ou desserializado, bem como o nome XML e o namespace (como XmlDictionaryString objetos) para ler ou gravar no documento XML.
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
Aplica-se a
DataContractSerializer(Type, String, String)
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado usando o namespace e o elemento raiz XML fornecidos.
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
O tipo das instâncias serializadas ou desserializadas.
- rootName
- String
O nome do elemento XML que inclui o conteúdo para serializar ou desserializar.
- rootNamespace
- String
O namespace do elemento XML que inclui o conteúdo a ser serializado ou desserializado.
Exemplos
O exemplo a seguir cria uma instância do DataContractSerializer que especifica o tipo a ser serializado ou desserializado, bem como o nome XML e o namespace a serem lidos ou gravados no documento XML.
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
Aplica-se a
DataContractSerializer(Type, DataContractSerializerSettings)
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo e das configurações especificadas.
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
O tipo da instância a ser serializada ou desserializada.
- settings
- DataContractSerializerSettings
As configurações do serializador.
Aplica-se a
DataContractSerializer(Type, IEnumerable<Type>)
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especifico e uma coleção de tipos conhecidos que podem existir no grafo do objeto.
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
O tipo das instâncias serializadas ou desserializadas.
- knownTypes
- IEnumerable<Type>
Um IEnumerable<T> de Type que contém os tipos que podem estar presentes no grafo do objeto.
Exemplos
O exemplo a seguir cria uma instância do DataContractSerializer que especifica o tipo a ser serializado ou desserializado e uma coleção de tipos conhecidos que podem ser usados no grafo de objeto.
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
Confira também
Aplica-se a
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>)
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
- Origem:
- DataContractSerializer.cs
Inicializa uma nova instância da classe DataContractSerializer para serializar ou desserializar um objeto do tipo especificado. Esse método também especifica o elemento XML raiz e o namespace em dois parâmetros XmlDictionaryString, bem como uma lista de tipos conhecidos que podem estar presentes no grafo do objeto.
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
O tipo das instâncias serializadas ou desserializadas.
- rootName
- XmlDictionaryString
Um XmlDictionaryString que contém o nome do elemento raiz do conteúdo.
- rootNamespace
- XmlDictionaryString
Um XmlDictionaryString que contém o namespace do elemento raiz.
- knownTypes
- IEnumerable<Type>
Um IEnumerable<T> de Type que contém os tipos conhecidos que podem estar presentes no grafo de objeto.
Exemplos
O exemplo a seguir cria uma instância do DataContractSerializer que especifica o tipo a ser serializado ou desserializado, bem como o nome XML e o namespace (como XmlDictionaryString objetos) para ler ou gravar no documento XML. O código também cria uma instância de um IEnumerable<T> para conter os tipos conhecidos usados durante a serialização ou desserialização.
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