Condividi tramite


NetDataContractSerializer Costruttori

Definizione

Inizializza una nuova istanza della classe NetDataContractSerializer.

Overload

NetDataContractSerializer()

Inizializza una nuova istanza della classe NetDataContractSerializer.

NetDataContractSerializer(StreamingContext)

Inizializza una nuova istanza della classe NetDataContractSerializer con i dati del contesto di flusso forniti.

NetDataContractSerializer(String, String)

Inizializza una nuova istanza della classe NetDataContractSerializer con l'elemento radice e lo spazio dei nomi XML forniti.

NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString)

Inizializza una nuova istanza della classe NetDataContractSerializer con due parametri di tipo XmlDictionaryString che contengono l'elemento radice e lo spazio dei nomi utilizzati per specificare il contenuto.

NetDataContractSerializer(StreamingContext, Int32, Boolean, FormatterAssemblyStyle, ISurrogateSelector)

Inizializza una nuova istanza della classe NetDataContractSerializer con i dati di contesto forniti; specifica inoltre il numero massimo di elementi nell'oggetto da serializzare e parametri per specificare se eventuali dati aggiuntivi vengono ignorati, il metodo di caricamento assembly e un selettore di surrogati.

NetDataContractSerializer(String, String, StreamingContext, Int32, Boolean, FormatterAssemblyStyle, ISurrogateSelector)

Inizializza una nuova istanza della classe NetDataContractSerializer con i dati di contesto forniti, il nome e lo spazio dei nomi radice; specifica inoltre il numero massimo di elementi nell'oggetto da serializzare e parametri per specificare se eventuali dati aggiuntivi vengono ignorati, il metodo di caricamento assembly e un selettore di surrogati.

NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString, StreamingContext, Int32, Boolean, FormatterAssemblyStyle, ISurrogateSelector)

Inizializza una nuova istanza della classe NetDataContractSerializer con i dati di contesto forniti, il nome e lo spazio dei nomi radice (come parametri XmlDictionaryString); specifica inoltre il numero massimo di elementi nell'oggetto da serializzare e parametri per specificare se eventuali dati aggiuntivi vengono ignorati, il metodo di caricamento assembly e un selettore di surrogati.

NetDataContractSerializer()

Inizializza una nuova istanza della classe NetDataContractSerializer.

public:
 NetDataContractSerializer();
public NetDataContractSerializer ();
Public Sub New ()

Esempio

public static void Constructor1()
{
    // Create an instance of the NetDataContractSerializer.
    NetDataContractSerializer ser =
        new NetDataContractSerializer();
    // Other code not shown.
}
Public Shared Sub Constructor1() 
    ' Create an instance of the NetDataContractSerializer.
    Dim ser As New System.Runtime.Serialization.NetDataContractSerializer()

End Sub 

' Other code not shown.

Si applica a

NetDataContractSerializer(StreamingContext)

Inizializza una nuova istanza della classe NetDataContractSerializer con i dati del contesto di flusso forniti.

public:
 NetDataContractSerializer(System::Runtime::Serialization::StreamingContext context);
public NetDataContractSerializer (System.Runtime.Serialization.StreamingContext context);
new System.Runtime.Serialization.NetDataContractSerializer : System.Runtime.Serialization.StreamingContext -> System.Runtime.Serialization.NetDataContractSerializer
Public Sub New (context As StreamingContext)

Parametri

context
StreamingContext

Struttura StreamingContext contenente i dati di contesto.

Esempio

Nell'esempio seguente viene creata un'istanza della classe NetDataContractSerializer utilizzando una struttura StreamingContext.

public static void Constructor2()
{
    // Create an instance of the StreamingContext to hold
    // context data.
    StreamingContext sc = new StreamingContext
        (StreamingContextStates.CrossAppDomain);
    // Create a DatatContractSerializer with the collection.
    NetDataContractSerializer ser2 = new NetDataContractSerializer(sc);

    // Other code not shown.
}
Public Shared Sub Constructor2() 
    ' Create an instance of the StreamingContext to hold
    ' context data.
    Dim sc As New StreamingContext()
    ' Create a DatatContractSerializer with the collection.
    Dim ser2 As New System.Runtime.Serialization.NetDataContractSerializer(sc)

   ' Other code not shown.
End Sub

Commenti

La classe StreamingContext consente di passare dati di contesto specifici per l'utente da utilizzare durante la lettura e la scrittura di oggetti.

Si applica a

NetDataContractSerializer(String, String)

Inizializza una nuova istanza della classe NetDataContractSerializer con l'elemento radice e lo spazio dei nomi XML forniti.

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

Parametri

rootName
String

Nome dell'elemento XML che include il contenuto da serializzare o deserializzare.

rootNamespace
String

Spazio dei nomi dell'elemento XML che include il contenuto da serializzare o deserializzare.

Esempio

Nell'esempio seguente viene creata un'istanza della classe DataContractSerializer che specifica l'elemento radice e lo spazio dei nomi XML previsti quando si deserializza un oggetto.

public static void Constructor3()
{
    // Create an instance of the NetDataContractSerializer
    // specifying the name and namespace as strings.
    NetDataContractSerializer ser =
        new NetDataContractSerializer(
        "Customer",
        "http://www.contoso.com");
    // Other code not shown.
}
Public Shared Sub Constructor3() 
    ' Create an instance of the NetDataContractSerializer
    ' specifying the name and namespace as strings.
    Dim ser As New System.Runtime.Serialization. _
       NetDataContractSerializer("Customer", "http://www.contoso.com")

   ' Other code not shown.

End Sub

Si applica a

NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString)

Inizializza una nuova istanza della classe NetDataContractSerializer con due parametri di tipo XmlDictionaryString che contengono l'elemento radice e lo spazio dei nomi utilizzati per specificare il contenuto.

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

Parametri

rootName
XmlDictionaryString

Classe XmlDictionaryString contenente il nome dell'elemento XML che include il contenuto da serializzare o deserializzare.

rootNamespace
XmlDictionaryString

Classe XmlDictionaryString contenente lo spazio dei nomi dell'elemento XML che include il contenuto da serializzare o deserializzare.

Esempio

Nell'esempio seguente viene creata un'istanza della classe DataContractSerializer che specifica l'elemento radice e lo spazio dei nomi XML (come argomenti XmlDictionaryString) previsti quando si deserializza un oggetto.

public static void Constructor4()
{
    // Create an XmlDictionary and add values to it.
    XmlDictionary d = new XmlDictionary();
    // Initialize the out variables.
    XmlDictionaryString name_value = d.Add("Customer");
    XmlDictionaryString ns_value = d.Add("http://www.contoso.com");

    // Create the serializer.
    NetDataContractSerializer ser =
        new NetDataContractSerializer(
        name_value,
        ns_value);
    // Other code not shown.
}
 Public Shared Sub Constructor4() 
     ' 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 System.Runtime.Serialization. _
        NetDataContractSerializer(name_value, ns_value)

     ' Other code not shown.
 
 End Sub

Commenti

La classe XmlDictionaryString può essere utilizzata per ottimizzare le prestazioni quando lo stesso set di stringhe viene utilizzato per più istanze dell'oggetto.

Si applica a

NetDataContractSerializer(StreamingContext, Int32, Boolean, FormatterAssemblyStyle, ISurrogateSelector)

Inizializza una nuova istanza della classe NetDataContractSerializer con i dati di contesto forniti; specifica inoltre il numero massimo di elementi nell'oggetto da serializzare e parametri per specificare se eventuali dati aggiuntivi vengono ignorati, il metodo di caricamento assembly e un selettore di surrogati.

public:
 NetDataContractSerializer(System::Runtime::Serialization::StreamingContext context, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, System::Runtime::Serialization::Formatters::FormatterAssemblyStyle assemblyFormat, System::Runtime::Serialization::ISurrogateSelector ^ surrogateSelector);
public NetDataContractSerializer (System.Runtime.Serialization.StreamingContext context, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, System.Runtime.Serialization.Formatters.FormatterAssemblyStyle assemblyFormat, System.Runtime.Serialization.ISurrogateSelector surrogateSelector);
new System.Runtime.Serialization.NetDataContractSerializer : System.Runtime.Serialization.StreamingContext * int * bool * System.Runtime.Serialization.Formatters.FormatterAssemblyStyle * System.Runtime.Serialization.ISurrogateSelector -> System.Runtime.Serialization.NetDataContractSerializer
Public Sub New (context As StreamingContext, maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, assemblyFormat As FormatterAssemblyStyle, surrogateSelector As ISurrogateSelector)

Parametri

context
StreamingContext

Struttura StreamingContext contenente i dati di contesto.

maxItemsInObjectGraph
Int32

Numero massimo di elementi nell'oggetto grafico da serializzare o deserializzare.

ignoreExtensionDataObject
Boolean

true per ignorare i dati forniti da un'estensione del tipo. In caso contrario, false.

assemblyFormat
FormatterAssemblyStyle

Valore dell'enumerazione FormatterAssemblyStyle che specifica un metodo per individuare e caricare assembly.

surrogateSelector
ISurrogateSelector

Un'implementazione dell'oggetto ISurrogateSelector.

Eccezioni

Valore maxItemsInObjectGraph minore di 0.

Esempio

Nell'esempio seguente viene creata un'istanza della classe NetDataContractSerializer utilizzando una struttura StreamingContext. Il codice imposta inoltre il parametro ignoreExtensionDataObject e specifica un'implementazione dell'interfaccia ISurrogateSelector per gestire il supporto al serializzatore durante la scelta di un surrogato (per la deserializzazione di tipi legacy).

public static void Constructor5()
{
    // Create an instance of the StreamingContext to hold
    // context data.
    StreamingContext sc = new StreamingContext
        (StreamingContextStates.CrossAppDomain);

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

    NetDataContractSerializer ser =
        new NetDataContractSerializer(
        sc,
        int.MaxValue,
        true,
        FormatterAssemblyStyle.Simple,
        mySurrogateSelector);

    // Other code not shown.
}
Public Shared Sub Constructor5() 
    ' Create an instance of the StreamingContext to hold
    ' context data.
    Dim sc As New StreamingContext()
    
    ' Create an instance of a class that implements the 
    ' ISurrogateSelector interface. The implementation code
    ' is not shown here.
    Dim mySurrogateSelector As New MySelector()
    
    Dim ser As New System.Runtime.Serialization. _
    NetDataContractSerializer _
    (sc, _
     65536, _
     True, _
     FormatterAssemblyStyle.Simple, _
     mySurrogateSelector)

    ' Other code not shown.
End Sub

Commenti

Il parametro ignoreExtensionDataObject viene utilizzato quando l'interfaccia IExtensibleDataObject viene implementata nella classe serializzata o deserializzata.

Si applica a

NetDataContractSerializer(String, String, StreamingContext, Int32, Boolean, FormatterAssemblyStyle, ISurrogateSelector)

Inizializza una nuova istanza della classe NetDataContractSerializer con i dati di contesto forniti, il nome e lo spazio dei nomi radice; specifica inoltre il numero massimo di elementi nell'oggetto da serializzare e parametri per specificare se eventuali dati aggiuntivi vengono ignorati, il metodo di caricamento assembly e un selettore di surrogati.

public:
 NetDataContractSerializer(System::String ^ rootName, System::String ^ rootNamespace, System::Runtime::Serialization::StreamingContext context, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, System::Runtime::Serialization::Formatters::FormatterAssemblyStyle assemblyFormat, System::Runtime::Serialization::ISurrogateSelector ^ surrogateSelector);
public NetDataContractSerializer (string rootName, string rootNamespace, System.Runtime.Serialization.StreamingContext context, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, System.Runtime.Serialization.Formatters.FormatterAssemblyStyle assemblyFormat, System.Runtime.Serialization.ISurrogateSelector surrogateSelector);
new System.Runtime.Serialization.NetDataContractSerializer : string * string * System.Runtime.Serialization.StreamingContext * int * bool * System.Runtime.Serialization.Formatters.FormatterAssemblyStyle * System.Runtime.Serialization.ISurrogateSelector -> System.Runtime.Serialization.NetDataContractSerializer
Public Sub New (rootName As String, rootNamespace As String, context As StreamingContext, maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, assemblyFormat As FormatterAssemblyStyle, surrogateSelector As ISurrogateSelector)

Parametri

rootName
String

Nome dell'elemento XML che include il contenuto da serializzare o deserializzare.

rootNamespace
String

Spazio dei nomi dell'elemento XML che include il contenuto da serializzare o deserializzare.

context
StreamingContext

Struttura StreamingContext contenente i dati di contesto.

maxItemsInObjectGraph
Int32

Numero massimo di elementi nell'oggetto grafico da serializzare o deserializzare.

ignoreExtensionDataObject
Boolean

true per ignorare i dati forniti da un'estensione del tipo. In caso contrario, false.

assemblyFormat
FormatterAssemblyStyle

Valore dell'enumerazione FormatterAssemblyStyle che specifica un metodo per individuare e caricare assembly.

surrogateSelector
ISurrogateSelector

Implementazione dell'interfaccia IDataContractSurrogate per gestire il tipo legacy.

Eccezioni

Valore maxItemsInObjectGraph minore di 0.

Esempio

Nell'esempio seguente viene creata un'istanza della classe NetDataContractSerializer che specifica il nome e lo spazio dei nomi dell'elemento XML da prevedere durante la deserializzazione. Il codice imposta inoltre il parametro ignoreExtensionDataObject e specifica un'implementazione dell'interfaccia ISurrogateSelector per gestire il supporto al serializzatore durante la scelta di un surrogato (per la deserializzazione di tipi legacy).

public static void Constructor6()
{
    // Create an instance of the StreamingContext to hold
    // context data.
    StreamingContext sc = new StreamingContext
        (StreamingContextStates.CrossAppDomain);

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

    NetDataContractSerializer ser =
        new NetDataContractSerializer(
        "Customer",
        "http://www.contoso.com",
        sc,
        int.MaxValue,
        true,
        FormatterAssemblyStyle.Simple,
        mySurrogateSelector);
    // Other code not shown.
}
Public Shared Sub Constructor6() 
    ' Create an instance of the StreamingContext to hold
    ' context data.
    Dim sc As New StreamingContext()
    
    ' Create an instance of a class that implements the 
    ' ISurrogateSelector interface. The implementation code
    ' is not shown here.
    Dim mySurrogateSelector As New MySelector()
    
    Dim ser As New System.Runtime.Serialization. _
      NetDataContractSerializer( _
      "Customer", _
      "http://www.contoso.com", _
      sc, _
      65536, _
      True, _
      FormatterAssemblyStyle.Simple, _
      mySurrogateSelector)

    ' Other code not shown.            

End Sub

Commenti

Il parametro ignoreExtensionDataObject viene utilizzato quando l'interfaccia IExtensibleDataObject viene implementata nella classe serializzata o deserializzata.

Si applica a

NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString, StreamingContext, Int32, Boolean, FormatterAssemblyStyle, ISurrogateSelector)

Inizializza una nuova istanza della classe NetDataContractSerializer con i dati di contesto forniti, il nome e lo spazio dei nomi radice (come parametri XmlDictionaryString); specifica inoltre il numero massimo di elementi nell'oggetto da serializzare e parametri per specificare se eventuali dati aggiuntivi vengono ignorati, il metodo di caricamento assembly e un selettore di surrogati.

public:
 NetDataContractSerializer(System::Xml::XmlDictionaryString ^ rootName, System::Xml::XmlDictionaryString ^ rootNamespace, System::Runtime::Serialization::StreamingContext context, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, System::Runtime::Serialization::Formatters::FormatterAssemblyStyle assemblyFormat, System::Runtime::Serialization::ISurrogateSelector ^ surrogateSelector);
public NetDataContractSerializer (System.Xml.XmlDictionaryString rootName, System.Xml.XmlDictionaryString rootNamespace, System.Runtime.Serialization.StreamingContext context, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, System.Runtime.Serialization.Formatters.FormatterAssemblyStyle assemblyFormat, System.Runtime.Serialization.ISurrogateSelector surrogateSelector);
new System.Runtime.Serialization.NetDataContractSerializer : System.Xml.XmlDictionaryString * System.Xml.XmlDictionaryString * System.Runtime.Serialization.StreamingContext * int * bool * System.Runtime.Serialization.Formatters.FormatterAssemblyStyle * System.Runtime.Serialization.ISurrogateSelector -> System.Runtime.Serialization.NetDataContractSerializer
Public Sub New (rootName As XmlDictionaryString, rootNamespace As XmlDictionaryString, context As StreamingContext, maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, assemblyFormat As FormatterAssemblyStyle, surrogateSelector As ISurrogateSelector)

Parametri

rootName
XmlDictionaryString

Classe XmlDictionaryString contenente l'elemento radice del contenuto.

rootNamespace
XmlDictionaryString

Classe XmlDictionaryString contenente lo spazio dei nomi dell'elemento radice.

context
StreamingContext

Struttura StreamingContext contenente i dati di contesto.

maxItemsInObjectGraph
Int32

Numero massimo di elementi nell'oggetto grafico da serializzare o deserializzare.

ignoreExtensionDataObject
Boolean

true per ignorare i dati forniti da un'estensione del tipo. In caso contrario, false.

assemblyFormat
FormatterAssemblyStyle

Valore dell'enumerazione FormatterAssemblyStyle che specifica un metodo per individuare e caricare assembly.

surrogateSelector
ISurrogateSelector

Implementazione dell'interfaccia IDataContractSurrogate per gestire il tipo legacy.

Eccezioni

Valore maxItemsInObjectGraph minore di 0.

Esempio

Nell'esempio seguente viene creata un'istanza della classe NetDataContractSerializer che specifica il nome e lo spazio dei nomi dell'elemento XML (come argomenti XmlDictionaryString) da prevedere durante la deserializzazione. Il codice imposta inoltre il parametro ignoreExtensionDataObject e specifica un'implementazione dell'interfaccia ISurrogateSelector per gestire il supporto al serializzatore durante la scelta di un surrogato (per la deserializzazione di tipi legacy).

public static void Constructor7()
{
    // Create an instance of the StreamingContext to hold
    // context data.
    StreamingContext sc = new StreamingContext
        (StreamingContextStates.CrossAppDomain);

    // 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
    // ISurrogateSelector interface. The implementation code
    // is not shown here.
    MySelector mySurrogateSelector = new MySelector();

    NetDataContractSerializer ser =
        new NetDataContractSerializer(
        name_value,
        ns_value,
        sc,
        int.MaxValue,
        true,
        FormatterAssemblyStyle.Simple,
        mySurrogateSelector);

    // Other code not shown.
}
Public Shared Sub Constructor7() 
    ' Create an instance of the StreamingContext to hold
    ' context data.
    Dim sc As New StreamingContext()
    
    ' 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 
    ' ISurrogateSelector interface. The implementation code
    ' is not shown here.
    Dim mySurrogateSelector As New MySelector()
    
    Dim ser As New System.Runtime.Serialization. _
      NetDataContractSerializer( _
      name_value, _
      ns_value, _
      sc, _
      65536, _
      True, _
      FormatterAssemblyStyle.Simple, _
      mySurrogateSelector)

    ' Other code not shown.    

End Sub

Commenti

La classe XmlDictionaryString può essere utilizzata per ottimizzare le prestazioni quando lo stesso set di stringhe viene utilizzato per più istanze dell'oggetto.

Il parametro ignoreExtensionDataObject viene utilizzato quando l'interfaccia IExtensibleDataObject viene implementata nella classe serializzata o deserializzata.

Si applica a