Поделиться через


NetDataContractSerializer Конструкторы

Определение

Инициализирует новый экземпляр класса NetDataContractSerializer.

Перегрузки

NetDataContractSerializer()

Инициализирует новый экземпляр класса NetDataContractSerializer.

NetDataContractSerializer(StreamingContext)

Инициализирует новый экземпляр класса NetDataContractSerializer с переданными данными контекста потоковой передачи.

NetDataContractSerializer(String, String)

Инициализирует новый экземпляр класса NetDataContractSerializer с указанными корневыми элементом и пространством имен XML.

NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString)

Инициализирует новый экземпляр класса NetDataContractSerializer с двумя параметрами типа XmlDictionaryString, содержащими корневые элемент и пространство имен, используемые для задания содержимого.

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

Инициализирует новый экземпляр класса NetDataContractSerializer с предоставленными данными контекста; также задает максимальное количество сериализуемых элементов объекта и параметры, указывающие, пропускаются ли дополнительные данные, метод загрузки сборки и суррогатный селектор.

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

Инициализирует новый экземпляр класса NetDataContractSerializer с предоставленными данными контекста, корневыми именем и пространством имен; также задает максимальное количество сериализуемых элементов объекта и параметры, указывающие, пропускаются ли дополнительные данные, метод загрузки сборки и суррогатный селектор.

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

Инициализирует новый экземпляр класса NetDataContractSerializer с предоставленными данными контекста, корневыми именем и пространством имен (в качестве параметров XmlDictionaryString); также задает максимальное количество сериализуемых элементов объекта и параметры, указывающие, игнорируются ли дополнительные данные, метод загрузки сборки и суррогатный селектор.

NetDataContractSerializer()

Инициализирует новый экземпляр класса NetDataContractSerializer.

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

Примеры

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.

Применяется к

NetDataContractSerializer(StreamingContext)

Инициализирует новый экземпляр класса NetDataContractSerializer с переданными данными контекста потоковой передачи.

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)

Параметры

context
StreamingContext

Объект StreamingContext, содержащий данные контекста.

Примеры

В следующем примере показано создание экземпляра класса NetDataContractSerializer с помощью 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

Комментарии

Класс StreamingContext позволяет передавать данные контекста пользователя, которые используются для чтения и записи объектов.

Применяется к

NetDataContractSerializer(String, String)

Инициализирует новый экземпляр класса NetDataContractSerializer с указанными корневыми элементом и пространством имен XML.

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)

Параметры

rootName
String

Имя XML-элемента, содержащего данные для сериализации или десериализации.

rootNamespace
String

Пространство имен XML-элемента, содержащего данные для сериализации или десериализации.

Примеры

В следующем примере показано создание экземпляра класса DataContractSerializer с указанием корневых элемента и пространства имен XML, ожидаемых им при десериализации объекта.

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

Применяется к

NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString)

Инициализирует новый экземпляр класса NetDataContractSerializer с двумя параметрами типа XmlDictionaryString, содержащими корневые элемент и пространство имен, используемые для задания содержимого.

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)

Параметры

rootName
XmlDictionaryString

Объект XmlDictionaryString, в котором находится имя XML-элемента, содержащего данные для сериализации или десериализации.

rootNamespace
XmlDictionaryString

Объект XmlDictionaryString, в котором находится пространство имен XML-элемента, содержащего данные для сериализации или десериализации.

Примеры

В следующем примере показано создание экземпляра класса DataContractSerializer с указанием корневых элемента и пространства имен XML (в качестве аргументов XmlDictionaryString), ожидаемых им при десериализации объекта.

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

Комментарии

Объект XmlDictionaryString может применяться для оптимизации производительности, когда в экземплярах объектов используется один и тот же набор строк.

Применяется к

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

Инициализирует новый экземпляр класса NetDataContractSerializer с предоставленными данными контекста; также задает максимальное количество сериализуемых элементов объекта и параметры, указывающие, пропускаются ли дополнительные данные, метод загрузки сборки и суррогатный селектор.

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)

Параметры

context
StreamingContext

Объект StreamingContext, содержащий данные контекста.

maxItemsInObjectGraph
Int32

Максимальное количество элементов в графе для сериализации или десериализации.

ignoreExtensionDataObject
Boolean

Значение true, если требуется игнорировать предоставляемые расширением типа данные; в противном случае — значение false.

assemblyFormat
FormatterAssemblyStyle

Значение перечисления FormatterAssemblyStyle, задающее метод определения местоположения и загрузки сборок.

surrogateSelector
ISurrogateSelector

Реализация метода ISurrogateSelector.

Исключения

Значение параметра maxItemsInObjectGraph меньше 0.

Примеры

В следующем примере показано создание экземпляра класса NetDataContractSerializer с помощью StreamingContext. В этом коде также задаются параметр ignoreExtensionDataObject и реализация интерфейса ISurrogateSelector для обработки, предусмотренного для содействия сериализатору при выборе суррогата (для десериализации устаревших типов).

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

Комментарии

Параметр ignoreExtensionDataObject используется при реализации интерфейса IExtensibleDataObject в сериализуемом или десериализуемом классе.

Применяется к

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

Инициализирует новый экземпляр класса NetDataContractSerializer с предоставленными данными контекста, корневыми именем и пространством имен; также задает максимальное количество сериализуемых элементов объекта и параметры, указывающие, пропускаются ли дополнительные данные, метод загрузки сборки и суррогатный селектор.

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)

Параметры

rootName
String

Имя XML-элемента, содержащего данные для сериализации или десериализации.

rootNamespace
String

Пространство имен XML-элемента, содержащего данные для сериализации или десериализации.

context
StreamingContext

Объект StreamingContext, содержащий данные контекста.

maxItemsInObjectGraph
Int32

Максимальное количество элементов в графе для сериализации или десериализации.

ignoreExtensionDataObject
Boolean

Значение true, если требуется игнорировать предоставляемые расширением типа данные; в противном случае — значение false.

assemblyFormat
FormatterAssemblyStyle

Значение перечисления FormatterAssemblyStyle, задающее метод определения местоположения и загрузки сборок.

surrogateSelector
ISurrogateSelector

Реализация объекта IDataContractSurrogate, используемого для обработки устаревших типов.

Исключения

Значение параметра maxItemsInObjectGraph меньше 0.

Примеры

В следующем примере показано создание экземпляра класса NetDataContractSerializer с указанием имени XML-элемента и пространства имен, ожидаемых при десериализации. В этом коде также задаются параметр ignoreExtensionDataObject и реализация интерфейса ISurrogateSelector для обработки, предусмотренного для содействия сериализатору при выборе суррогата (для десериализации устаревших типов).

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

Комментарии

Параметр ignoreExtensionDataObject используется при реализации интерфейса IExtensibleDataObject в сериализуемом или десериализуемом классе.

Применяется к

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

Инициализирует новый экземпляр класса NetDataContractSerializer с предоставленными данными контекста, корневыми именем и пространством имен (в качестве параметров XmlDictionaryString); также задает максимальное количество сериализуемых элементов объекта и параметры, указывающие, игнорируются ли дополнительные данные, метод загрузки сборки и суррогатный селектор.

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)

Параметры

rootName
XmlDictionaryString

Объект XmlDictionaryString, содержащий корневой элемент содержимого.

rootNamespace
XmlDictionaryString

Объект XmlDictionaryString, содержащий пространство имен корневого элемента.

context
StreamingContext

Объект StreamingContext, содержащий данные контекста.

maxItemsInObjectGraph
Int32

Максимальное количество элементов в графе для сериализации или десериализации.

ignoreExtensionDataObject
Boolean

Значение true, если требуется игнорировать предоставляемые расширением типа данные; в противном случае — значение false.

assemblyFormat
FormatterAssemblyStyle

Значение перечисления FormatterAssemblyStyle, задающее метод определения местоположения и загрузки сборок.

surrogateSelector
ISurrogateSelector

Реализация объекта IDataContractSurrogate, используемого для обработки устаревших типов.

Исключения

Значение параметра maxItemsInObjectGraph меньше 0.

Примеры

В следующем примере показано создание экземпляра класса NetDataContractSerializer с указанием имени XML-элемента и пространства имен (в качестве аргументов XmlDictionaryString), ожидаемых при десериализации. В этом коде также задаются параметр ignoreExtensionDataObject и реализация интерфейса ISurrogateSelector для обработки, предусмотренного для содействия сериализатору при выборе суррогата (для десериализации устаревших типов).

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

Комментарии

Объект XmlDictionaryString может применяться для оптимизации производительности, когда в экземплярах объектов используется один и тот же набор строк.

Параметр ignoreExtensionDataObject используется при реализации интерфейса IExtensibleDataObject в сериализуемом или десериализуемом классе.

Применяется к