DataContractSerializer Класс

Определение

Сериализует и десериализирует экземпляр типа в XML-поток или документ с помощью предоставленного контракта данных. Этот класс не наследуется.

public ref class DataContractSerializer sealed : System::Runtime::Serialization::XmlObjectSerializer
public sealed class DataContractSerializer : System.Runtime.Serialization.XmlObjectSerializer
type DataContractSerializer = class
    inherit XmlObjectSerializer
Public NotInheritable Class DataContractSerializer
Inherits XmlObjectSerializer
Наследование
DataContractSerializer

Комментарии

Дополнительные сведения об этом API см. в дополнительных примечаниях API для DataContractSerializer.

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

Имя Описание
DataContractSerializer(Type, DataContractSerializerSettings)

Инициализирует новый экземпляр DataContractSerializer класса для сериализации или десериализации объекта указанного типа и параметров.

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

Инициализирует новый экземпляр DataContractSerializer класса для сериализации или десериализации объекта указанного типа. Этот метод также указывает список известных типов, которые могут присутствовать в графе объектов, максимальное количество элементов графа для сериализации, параметры для пропуска непредвиденных данных, использование нестандартных XML-конструкций для сохранения ссылочных данных объекта в графе, суррогата для пользовательской сериализации и альтернативы для объявлений сопоставления xsi:type во время выполнения.

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

Инициализирует новый экземпляр DataContractSerializer класса для сериализации или десериализации объекта указанного типа. Этот метод также указывает список известных типов, которые могут присутствовать в графе объектов, максимальное количество элементов графа для сериализации, параметры для пропуска непредвиденных данных, использование нестандартных XML-конструкций для сохранения эталонных данных объекта в графе и суррогат для пользовательской сериализации.

DataContractSerializer(Type, IEnumerable<Type>)

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

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

Инициализирует новый экземпляр DataContractSerializer класса для сериализации или десериализации объекта указанного типа. Этот метод также указывает список известных типов, которые могут присутствовать в графе объектов, максимальное количество элементов графа для сериализации, параметров, которые игнорируют непредвиденные данные, независимо от того, следует ли использовать нестандартные xml-конструкции для сохранения ссылочных данных объекта в графе, суррогата для пользовательской сериализации, XML-элемента и пространства имен, содержащего содержимое, и альтернатива для объявлений сопоставления xsi:type во время выполнения.

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

Инициализирует новый экземпляр DataContractSerializer класса для сериализации или десериализации объекта указанного типа. Этот метод также задает список известных типов, которые могут присутствовать в графе объектов, максимальное количество элементов графа для сериализации, параметры для пропуска непредвиденных данных, использование нестандартных xml-конструкций для сохранения ссылочных данных объекта в графе, суррогата для пользовательской сериализации, а также элемента XML и пространства имен, содержащего содержимое.

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

Инициализирует новый экземпляр DataContractSerializer класса для сериализации или десериализации объекта указанного типа. Этот метод также задает корневой XML-элемент и пространство имен в двух строковых параметрах, а также список известных типов, которые могут присутствовать в графе объектов.

DataContractSerializer(Type, String, String)

Инициализирует новый экземпляр DataContractSerializer класса для сериализации или десериализации объекта указанного типа с помощью предоставленного корневого элемента XML и пространства имен.

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

Инициализирует новый экземпляр DataContractSerializer класса для сериализации или десериализации объекта указанного типа. Этот метод также указывает список известных типов, которые могут присутствовать в графе объектов, максимальное количество элементов графа для сериализации, параметры для пропуска непредвиденных данных, использование нестандартных XML-конструкций для сохранения ссылочных данных объекта в графе, суррогатной для пользовательской сериализации, параметров XmlDictionaryString , определяющих XML-элемент и пространство имен, содержащее содержимое, и альтернатива для объявлений сопоставления xsi:type во время выполнения.

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

Инициализирует новый экземпляр DataContractSerializer класса для сериализации или десериализации объекта указанного типа. Этот метод также указывает список известных типов, которые могут присутствовать в графе объектов, максимальное количество элементов графа для сериализации, параметры для пропуска непредвиденных данных, использование нестандартных xml-конструкций для сохранения ссылочных данных объекта в графе, суррогата для пользовательской сериализации и параметров XmlDictionaryString , определяющих XML-элемент и пространство имен, содержащее содержимое.

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

Инициализирует новый экземпляр DataContractSerializer класса для сериализации или десериализации объекта указанного типа. Этот метод также указывает корневой XML-элемент и пространство имен в двух XmlDictionaryString параметрах, а также список известных типов, которые могут присутствовать в графе объектов.

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)

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

DataContractSerializer(Type)

Инициализирует новый экземпляр DataContractSerializer класса для сериализации или десериализации объекта указанного типа.

Свойства

Имя Описание
DataContractResolver

Возвращает компонент, используемый для динамического сопоставления xsi:type объявлений с известными типами контрактов.

DataContractSurrogate

Получает суррогатный тип, который может расширить процесс сериализации или десериализации.

IgnoreExtensionDataObject

Возвращает значение, указывающее, следует ли игнорировать данные, предоставленные расширением класса при сериализации или десериализации класса.

KnownTypes

Возвращает коллекцию типов, которые могут присутствовать в графе объектов, сериализованном с помощью этого экземпляра DataContractSerializerобъекта.

MaxItemsInObjectGraph

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

PreserveObjectReferences

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

SerializeReadOnlyTypes

Возвращает значение, указывающее, сериализуются ли типы только для чтения.

Методы

Имя Описание
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
IsStartObject(XmlDictionaryReader)

Определяет, размещается ли объект XmlDictionaryReader на объекте, который можно десериализировать.

IsStartObject(XmlReader)

Определяет, размещается ли объект XmlReader на объекте, который можно десериализировать.

MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ReadObject(Stream)

Считывает XML-поток или документ с помощью десериализированного Stream объекта и возвращает десериализированный объект.

(Унаследовано от XmlObjectSerializer)
ReadObject(XmlDictionaryReader, Boolean, DataContractResolver)

Считывает XML-документ или поток документов и возвращает десериализированный объект. Этот метод содержит параметр, указывающий, проверяется ли имя объекта, и сопоставитель для объявлений сопоставления xsi:type во время выполнения.

ReadObject(XmlDictionaryReader, Boolean)

Считывает XML-поток с XmlDictionaryReader десериализированным объектом и возвращает десериализированный объект, а также указывает, выполняется ли проверка имени объекта перед чтением его значения.

ReadObject(XmlDictionaryReader)

Считывает XML-документ или поток с десериализированным XmlDictionaryReader объектом.

(Унаследовано от XmlObjectSerializer)
ReadObject(XmlReader, Boolean)

Считывает XML-поток с XmlReader десериализированным объектом и возвращает десериализированный объект, а также указывает, выполняется ли проверка имени объекта перед чтением его значения.

ReadObject(XmlReader)

Считывает XML-поток с десериализированным XmlReader объектом и возвращает десериализированный объект.

ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
WriteEndObject(XmlDictionaryWriter)

Записывает закрывающий XML-элемент с помощью элемента XmlDictionaryWriter.

WriteEndObject(XmlWriter)

Записывает закрывающий XML-элемент с помощью элемента XmlWriter.

WriteObject(Stream, Object)

Записывает полное содержимое (начало, содержимое и конец) объекта в XML-документ или поток с указанным Stream.

(Унаследовано от XmlObjectSerializer)
WriteObject(XmlDictionaryWriter, Object, DataContractResolver)

Записывает все данные объекта (начальный XML-элемент, содержимое и вложенный элемент) в XML-документ или поток с помощью указанного XmlDictionaryWriter. Этот метод включает в себя сопоставитель для объявлений сопоставления xsi:type во время выполнения.

WriteObject(XmlDictionaryWriter, Object)

Записывает полное содержимое (начало, содержимое и конец) объекта в XML-документ или поток с указанным XmlDictionaryWriter.

(Унаследовано от XmlObjectSerializer)
WriteObject(XmlWriter, Object)

Записывает все данные объекта (начиная с XML-элемента, содержимого и закрывающего элемента) в XML-документ или поток с помощью XmlWriterобъекта.

WriteObjectContent(XmlDictionaryWriter, Object)

Записывает XML-содержимое с помощью .XmlDictionaryWriter

WriteObjectContent(XmlWriter, Object)

Записывает XML-содержимое с помощью .XmlWriter

WriteStartObject(XmlDictionaryWriter, Object)

Записывает открывающий XML-элемент с помощью элемента XmlDictionaryWriter.

WriteStartObject(XmlWriter, Object)

Записывает открывающий XML-элемент с помощью элемента XmlWriter.

Методы расширения

Имя Описание
GetSerializationSurrogateProvider(DataContractSerializer)

Возвращает суррогатный поставщик сериализации для этого сериализатора.

SetSerializationSurrogateProvider(DataContractSerializer, ISerializationSurrogateProvider)

Указывает для этого DataContractSerializerсуррогатный поставщик сериализации.

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

Потокобезопасность

Экземпляры этого класса являются потокобезопасными, за исключением случаев, когда экземпляр используется с реализацией IDataContractSurrogate или DataContractResolver.

См. также раздел