System.Runtime.Serialization Namespace

Пространство имен System.Runtime.Serialization содержит классы, которые можно использовать для сериализации и десериализации объектов. The System.Runtime.Serialization namespace contains classes that can be used for serializing and deserializing objects. Сериализацией называется процесс преобразования объекта или набора объектов в линейную последовательность байтов для сохранения или для передачи на другой компьютер. Serialization is the process of converting an object or a graph of objects into a linear sequence of bytes for either storage or transmission to another location. Десериализация — это процесс получения сохраненных данных и восстановления из них объектов. Deserialization is the process of taking in stored information and recreating objects from it.

Классы

CollectionDataContractAttribute

При применении к типу коллекции позволяет пользователю задавать элементы коллекции.When applied to a collection type, enables custom specification of the collection item elements. Этот атрибут может применяться только к типам, распознаваемым методом DataContractSerializer как допустимые сериализуемые коллекции.This attribute can be applied only to types that are recognized by the DataContractSerializer as valid, serializable collections.

ContractNamespaceAttribute

Задает пространство имен среды CLR и пространство имен XML для контракта данных.Specifies the CLR namespace and XML namespace of the data contract.

DataContractAttribute

Указывает, что тип определяет или реализует контракт данных и может быть сериализован сериализатором, таким как DataContractSerializer.Specifies that the type defines or implements a data contract and is serializable by a serializer, such as the DataContractSerializer. Чтобы сделать тип сериализуемым, авторы типа должны определить для него контракт данных.To make their type serializable, type authors must define a data contract for their type.

DataContractResolver

Предоставляет механизм динамического сопоставления типов с представлением xsi:type во время сериализации и десериализации.Provides a mechanism for dynamically mapping types to and from xsi:type representations during serialization and deserialization.

DataContractSerializer

Сериализует и десериализует экземпляр типа в XML-поток или документ с помощью предоставленного контракта данных.Serializes and deserializes an instance of a type into an XML stream or document using a supplied data contract. Этот класс не наследуется.This class cannot be inherited.

DataContractSerializerExtensions

Расширяет класс DataContractSerializer за счет предоставления методов для задания и получения ISerializationSurrogateProvider.Extends the DataContractSerializer class by providing methods for setting and getting an ISerializationSurrogateProvider.

DataContractSerializerSettings

Задает параметры сериализатора контракта данных.Specifies data contract serializer settings.

DataMemberAttribute

При применении к элементу типа указывает, что этот элемент является частью контракта данных и сериализуется DataContractSerializer.When applied to the member of a type, specifies that the member is part of a data contract and is serializable by the DataContractSerializer.

DateTimeFormat

Задает параметры формата даты-времени.Specifies date-time format options.

EnumMemberAttribute

Указывает, что поле является элементом перечисления и должно быть сериализовано.Specifies that the field is an enumeration member and should be serialized.

ExportOptions

Представляет параметры, которые могут устанавливаться для XsdDataContractExporter.Represents the options that can be set for an XsdDataContractExporter.

ExtensionDataObject

Сохраняет данные из контракта данных с возможностью управления версиями, который был расширен посредством добавления новых элементов.Stores data from a versioned data contract that has been extended by adding new members.

Formatter

Предоставляет основные функциональные возможности для форматеров сериализации общеязыковой среды выполнения.Provides base functionality for the common language runtime serialization formatters.

FormatterConverter

Представляет базовую реализацию интерфейса IFormatterConverter, использующую класс Convert и интерфейс IConvertible.Represents a base implementation of the IFormatterConverter interface that uses the Convert class and the IConvertible interface.

FormatterServices

Предоставляет статические методы, упрощающие реализацию Formatter для сериализации.Provides static methods to aid with the implementation of a Formatter for serialization. Этот класс не наследуется.This class cannot be inherited.

IgnoreDataMemberAttribute

При применении к элементу типа указывает, что этот элемент не является частью контракта данных и не сериализуется.When applied to the member of a type, specifies that the member is not part of a data contract and is not serialized.

ImportOptions

Представляет параметры, которые могут устанавливаться для XsdDataContractImporter.Represents the options that can be set on an XsdDataContractImporter.

InvalidDataContractException

Исключение, которое выдается, если DataContractSerializer или NetDataContractSerializer встречает недопустимый контракт данных во время сериализации или десериализации.The exception that is thrown when the DataContractSerializer or NetDataContractSerializer encounters an invalid data contract during serialization and deserialization.

KnownTypeAttribute

Задает типы, которые должны распознаваться DataContractSerializer при сериализации или десериализации указанного типа.Specifies types that should be recognized by the DataContractSerializer when serializing or deserializing a given type.

NetDataContractSerializer

Сериализует и десериализует экземпляр типа в XML-поток или документ с помощью типов, предоставляемых .NET Framework.Serializes and deserializes an instance of a type into XML stream or document using the supplied .NET Framework types. Этот класс не наследуется.This class cannot be inherited.

ObjectIDGenerator

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

ObjectManager

Отслеживает объекты при их десериализации.Keeps track of objects as they are deserialized.

OnDeserializedAttribute

При применении к методу указывает, что метод вызывается сразу после десериализации объекта в графе объекта.When applied to a method, specifies that the method is called immediately after deserialization of an object in an object graph. Порядок десериализации относительно других объектов в графе является недетерминированным.The order of deserialization relative to other objects in the graph is non-deterministic.

OnDeserializingAttribute

При применении к методу указывает, что метод вызывается во время десериализации объекта в графе объекта.When applied to a method, specifies that the method is called during deserialization of an object in an object graph. Порядок десериализации относительно других объектов в графе является недетерминированным.The order of deserialization relative to other objects in the graph is non-deterministic.

OnSerializedAttribute

При применении к методу указывает, что метод вызывается после десериализации объекта в графе объекта.When applied to a method, specifies that the method is called after serialization of an object in an object graph. Порядок сериализации относительно других объектов в графе является недетерминированным.The order of serialization relative to other objects in the graph is non-deterministic.

OnSerializingAttribute

При применении к методу указывает, что метод вызывается во время сериализации объекта в графе объекта.When applied to a method, specifies that the method is during serialization of an object in an object graph. Порядок сериализации относительно других объектов в графе является недетерминированным.The order of serialization relative to other objects in the graph is non-deterministic.

OptionalFieldAttribute

Указывает, что поле может отсутствовать из сериализованного потока, таким образом, BinaryFormatter и SoapFormatter не создают исключение.Specifies that a field can be missing from a serialization stream so that the BinaryFormatter and the SoapFormatter does not throw an exception.

SafeSerializationEventArgs

Предоставляет данные для события SerializeObjectState.Provides data for the SerializeObjectState event.

SerializationBinder

Позволяет пользователям управлять загрузкой классов и выбирать класс для загрузки.Allows users to control class loading and mandate what class to load.

SerializationException

Данное исключение создается при возникновении ошибки во время сериализации или десериализации.The exception thrown when an error occurs during serialization or deserialization.

SerializationInfo

Содержит все данные, необходимые для сериализации или десериализации объекта.Stores all the data needed to serialize or deserialize an object. Этот класс не наследуется.This class cannot be inherited.

SerializationInfoEnumerator

Предоставляет удобный для форматера механизм синтаксического анализа данных в SerializationInfo.Provides a formatter-friendly mechanism for parsing the data in SerializationInfo. Этот класс не наследуется.This class cannot be inherited.

SerializationObjectManager

Управляет процессами сериализации во время исполнения.Manages serialization processes at run time. Этот класс не наследуется.This class cannot be inherited.

SurrogateSelector

Содействует форматерам при выборе знака-заместителя сериализации для делегирования в обработку сериализации или десериализации.Assists formatters in selection of the serialization surrogate to delegate the serialization or deserialization process to.

XmlObjectSerializer

Предоставляет базовый класс для сериализации объектов в XML-потоки или XML-документы.Provides the base class used to serialize objects as XML streams or documents. Это абстрактный класс.This class is abstract.

XmlSerializableServices

Содержит методы для чтения и записи XML.Contains methods for reading and writing XML.

XPathQueryGenerator

Если заданы класс, представляющий контракт данных, и метаданные, представляющие участника контракта, создает запрос XPath для участника.When given a class representing a data contract, and metadata representing a member of the contract, produces an XPath query for the member.

XsdDataContractExporter

Предоставляет возможность преобразования набора типов .NET Framework, используемых в контрактах данных, в файл схемы XML (XSD).Allows the transformation of a set of .NET Framework types that are used in data contracts into an XML schema file (.xsd).

XsdDataContractImporter

Позволяет преобразовать набор файлов схемы XML (XSD) в типы среды CLR.Allows the transformation of a set of XML schema files (.xsd) into common language runtime (CLR) types.

Структуры

SerializationEntry

Содержит значение Type и имя сериализованного объекта.Holds the value, Type, and name of a serialized object.

StreamingContext

Описывает источник и назначение данного сериализованного потока и предоставляет дополнительный, определяемый вызывающим, контекст.Describes the source and destination of a given serialized stream, and provides an additional caller-defined context.

Интерфейсы

IDataContractSurrogate

Предоставляет методы, необходимые для замены одного типа другим с помощью метода DataContractSerializer во время сериализации, десериализации, а также экспорта и импорта документов схемы XML (XSD).Provides the methods needed to substitute one type for another by the DataContractSerializer during serialization, deserialization, and export and import of XML schema documents (XSD).

IDeserializationCallback

Указывает на необходимость уведомления класса о завершении десериализации всего графа объектов.Indicates that a class is to be notified when deserialization of the entire object graph has been completed. Обратите внимание, что этот интерфейс не вызывается при десериализации с помощью XmlSerializer (System.Xml.Serialization.XmlSerializer).Note that this interface is not called when deserializing with the XmlSerializer (System.Xml.Serialization.XmlSerializer).

IExtensibleDataObject

Предоставляет структуру данных для хранения дополнительных данных, обнаруженных XmlObjectSerializer при десериализации типа, отмеченного атрибутом DataContractAttribute.Provides a data structure to store extra data encountered by the XmlObjectSerializer during deserialization of a type marked with the DataContractAttribute attribute.

IFormatter

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

IFormatterConverter

Осуществляет связь между экземпляром SerializationInfo и предоставленным форматером классом, наиболее подходящим для анализа данных внутри SerializationInfo.Provides the connection between an instance of SerializationInfo and the formatter-provided class best suited to parse the data inside the SerializationInfo.

IObjectReference

Указывает, что конструктор текущего интерфейса является ссылкой на другой объект.Indicates that the current interface implementer is a reference to another object.

ISafeSerializationData

Включает сериализацию данных пользовательского исключения в прозрачный с точки зрения безопасности код.Enables serialization of custom exception data in security-transparent code.

ISerializable

Позволяет объекту управлять его собственной сериализацией и десериализацией.Allows an object to control its own serialization and deserialization.

ISerializationSurrogate

Реализует селектор суррогата сериализации, который позволяет одному объекту выполнять сериализацию и десериализацию другого.Implements a serialization surrogate selector that allows one object to perform serialization and deserialization of another.

ISerializationSurrogateProvider

Предоставляет методы, необходимые для создания суррогата сериализации, который расширяет DataContractSerializer.Provides the methods needed to construct a serialization surrogate that extends the DataContractSerializer. Суррогат сериализации используется во время сериализации и десериализации для замены одного типа другим.A serialization surrogate is used during serialization and deserialization to substitute one type for another.

ISurrogateSelector

Указывает класс селектора суррогата сериализации.Indicates a serialization surrogate selector class.

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

EmitTypeInformation

Определяет частоту выдачи сведений о типе.Specifies how often to emit type information.

StreamingContextStates

Определяет набор флагов, которые указывают контекст источника или назначения для потока во время сериализации.Defines a set of flags that specifies the source or destination context for the stream during serialization.

Комментарии

Интерфейс ISerializable предоставляет классам возможность управлять своим поведением при сериализации.The ISerializable interface provides a way for classes to control their own serialization behavior. Классы в System.Runtime.Serialization.Formatters пространства имен управляют фактическим форматированием различных типов данных, инкапсулированных в сериализованные объекты.Classes in the System.Runtime.Serialization.Formatters namespace control the actual formatting of various data types encapsulated in the serialized objects.

Модули форматирования, сериализация и десериализация объектов между определенного формата, которые можно найти в System.Runtime.Serialization.Formatters пространства имен.Formatters that serialize and deserialize objects to and from a particular format can be found in the System.Runtime.Serialization.Formatters namespace.