System.Runtime.Serialization Пространство имен

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

Классы

CollectionDataContractAttribute

При применении к типу коллекции позволяет пользователю задавать элементы коллекции. Этот атрибут может применяться только к типам, распознаваемым методом DataContractSerializer как допустимые сериализуемые коллекции.

ContractNamespaceAttribute

Задает пространство имен среды CLR и пространство имен XML для контракта данных.

DataContractAttribute

Указывает, что тип определяет или реализует контракт данных и может быть сериализован сериализатором, таким как DataContractSerializer. Чтобы сделать тип сериализуемым, авторы типа должны определить для него контракт данных.

DataContractResolver

Предоставляет механизм динамического сопоставления типов с представлением xsi:type во время сериализации и десериализации.

DataContractSerializer

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

DataContractSerializerExtensions

Расширяет класс DataContractSerializer за счет предоставления методов для задания и получения ISerializationSurrogateProvider.

DataContractSerializerSettings

Задает параметры сериализатора контракта данных.

DataMemberAttribute

При применении к элементу типа указывает, что этот элемент является частью контракта данных и сериализуется DataContractSerializer.

DateTimeFormat

Задает параметры формата даты-времени.

EnumMemberAttribute

Указывает, что поле является элементом перечисления и должно быть сериализовано.

ExportOptions

Представляет параметры, которые могут устанавливаться для XsdDataContractExporter.

ExtensionDataObject

Сохраняет данные из контракта данных с возможностью управления версиями, который был расширен посредством добавления новых элементов.

Formatter

Предоставляет основные функциональные возможности для форматеров сериализации общеязыковой среды выполнения.

FormatterConverter

Представляет базовую реализацию интерфейса IFormatterConverter, использующую класс Convert и интерфейс IConvertible.

FormatterServices

Предоставляет статические методы, упрощающие реализацию Formatter для сериализации. Этот класс не наследуется.

IgnoreDataMemberAttribute

При применении к элементу типа указывает, что этот элемент не является частью контракта данных и не сериализуется.

ImportOptions

Представляет параметры, которые могут устанавливаться для XsdDataContractImporter.

InvalidDataContractException

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

KnownTypeAttribute

Задает типы, которые должны распознаваться DataContractSerializer при сериализации или десериализации указанного типа.

NetDataContractSerializer

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

ObjectIDGenerator

Создает идентификаторы для объектов.

ObjectManager

Отслеживает объекты при их десериализации.

OnDeserializedAttribute

При применении к методу указывает, что метод вызывается сразу после десериализации объекта в графе объекта. Порядок десериализации относительно других объектов в графе является недетерминированным.

OnDeserializingAttribute

При применении к методу указывает, что метод вызывается во время десериализации объекта в графе объекта. Порядок десериализации относительно других объектов в графе является недетерминированным.

OnSerializedAttribute

При применении к методу указывает, что метод вызывается после десериализации объекта в графе объекта. Порядок сериализации относительно других объектов в графе является недетерминированным.

OnSerializingAttribute

При применении к методу указывает, что метод вызывается во время сериализации объекта в графе объектов. Порядок сериализации относительно других объектов в графе является недетерминированным.

OptionalFieldAttribute

Указывает, что поле может отсутствовать из сериализованного потока, таким образом, BinaryFormatter и SoapFormatter не создают исключение.

SafeSerializationEventArgs

Предоставляет данные для события SerializeObjectState.

SerializationBinder

Позволяет пользователям управлять загрузкой классов и выбирать класс для загрузки.

SerializationException

Исключение, которое выдается при возникновении ошибки во время сериализации или десериализации.

SerializationInfo

Содержит все данные, необходимые для сериализации или десериализации объекта. Этот класс не наследуется.

SerializationInfoEnumerator

Предоставляет удобный для модуля форматирования механизм анализа данных в SerializationInfo. Этот класс не наследуется.

SerializationObjectManager

Управляет процессами сериализации во время исполнения. Этот класс не наследуется.

SurrogateSelector

Содействует форматерам при выборе знака-заместителя сериализации для делегирования в обработку сериализации или десериализации.

XmlObjectSerializer

Предоставляет базовый класс для сериализации объектов в XML-потоки или XML-документы. Это абстрактный класс.

XmlSerializableServices

Содержит методы для чтения и записи XML.

XPathQueryGenerator

Если заданы класс, представляющий контракт данных, и метаданные, представляющие участника контракта, создает запрос XPath для участника.

XsdDataContractExporter

Предоставляет возможность преобразования набора типов .NET, используемых в контрактах данных в файле схемы XML (XSD).

XsdDataContractImporter

Позволяет преобразовать набор файлов схемы XML (XSD) в типы среды CLR.

Структуры

SerializationEntry

Содержит значение Type и имя сериализованного объекта.

StreamingContext

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

Интерфейсы

IDataContractSurrogate

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

IDeserializationCallback

Указывает на необходимость уведомления класса о завершении десериализации всего графа объектов. Обратите внимание, что этот интерфейс не вызывается при десериализации с помощью XmlSerializer (System.Xml.Serialization.XmlSerializer).

IExtensibleDataObject

Предоставляет структуру данных для хранения дополнительных данных, обнаруженных XmlObjectSerializer при десериализации типа, отмеченного атрибутом DataContractAttribute.

IFormatter

Предоставляет функциональные возможности для форматирования сериализованных объектов.

IFormatterConverter

Осуществляет связь между экземпляром SerializationInfo и предоставленным форматером классом, наиболее подходящим для анализа данных внутри SerializationInfo.

IObjectReference

Указывает, что конструктор текущего интерфейса является ссылкой на другой объект.

ISafeSerializationData

Включает сериализацию данных пользовательского исключения в прозрачный с точки зрения безопасности код.

ISerializable

Позволяет объекту управлять его собственной сериализацией и десериализацией.

ISerializationSurrogate

Реализует селектор суррогата сериализации, который позволяет одному объекту выполнять сериализацию и десериализацию другого.

ISerializationSurrogateProvider

Предоставляет методы, необходимые для создания суррогата сериализации, который расширяет DataContractSerializer. Суррогат сериализации используется во время сериализации и десериализации для замены одного типа другим.

ISurrogateSelector

Указывает класс селектора суррогата сериализации.

Перечисления

EmitTypeInformation

Определяет частоту выдачи сведений о типе.

StreamingContextStates

Определяет набор флагов, которые указывают контекст источника или назначения для потока во время сериализации.

Комментарии

Интерфейс ISerializable предоставляет классам возможность управлять своим поведением при сериализации. Классы в System.Runtime.Serialization.Formatters пространстве имен управляют фактическим форматированием различных типов данных, инкапсулированных в сериализованные объекты.

Модули форматирования, которые выполняют сериализацию и десериализацию объектов в определенный формат и из него, можно найти в System.Runtime.Serialization.Formatters пространстве имен.