System.Runtime.Serialization 命名空间

包含可用于序列化和反序列化对象的类。 序列化是将对象或对象图转换为线性的字节序列以存储或传输到其他位置的过程。 反序列化是接受存储的信息并从该信息重新创建对象的过程。

CollectionDataContractAttribute

当应用于集合类型时,可用来对集合项元素进行自定义指定。 此属性只能应用于被 DataContractSerializer 视为有效的可序列化集合的类型。

ContractNamespaceAttribute

指定数据协定的 CLR 命名空间和 XML 命名空间。

DataContractAttribute

指定该类型要定义或实现一个数据协定,并可由序列化程序(如 DataContractSerializer)进行序列化。 若要使其类型可序列化,类型作者必须为其类型定义数据协定。

DataContractResolver

提供一种机制,用于在序列化和反序列化期间在类型和 xsi:type 表示形式之间动态进行相互映射。

DataContractSerializer

使用提供的数据协定,将类型实例序列化和反序列化为 XML 流或文档。 此类不能被继承。

DataContractSerializerExtensions

通过提供用于设置和获取 ISerializationSurrogateProvider 的方法来扩展 DataContractSerializer 类。

DataContractSerializerSettings

指定数据协定序列化程序设置。

DataMemberAttribute

当应用于类型的成员时,指定该成员是数据协定的一部分并可由 DataContractSerializer 进行序列化。

DateTimeFormat

指定日期时间格式选择。

EnumMemberAttribute

指定字段为枚举成员并且应该序列化。

ExportOptions

表示可为 XsdDataContractExporter 设置的选项。

ExtensionDataObject

存储已经通过添加新成员扩展的版本化数据协定中的数据。

Formatter

提供公共语言运行时序列化格式化程序的基本功能。

FormatterConverter

表示 IFormatterConverter 接口的基实现,该接口使用 Convert 类和 IConvertible 接口。

FormatterServices

提供静态方法,以协助实现用于序列化的 Formatter。 此类不能被继承。

IgnoreDataMemberAttribute

当应用于类型的成员时,指定该成员不是数据协定的一部分且没有进行序列化。

ImportOptions

表示可对 XsdDataContractImporter 设置的选项。

InvalidDataContractException

DataContractSerializerNetDataContractSerializer 在序列化和反序列化的过程中遇到无效的数据协定时引发的异常。

KnownTypeAttribute

指定 DataContractSerializer 在序列化或反序列化给定类型时应识别的类型。

NetDataContractSerializer

使用提供的 .NET Framework 类型,将类型实例序列化和反序列化为 XML 流或文档。 此类不能被继承。

ObjectIDGenerator

生成对象的 ID。

ObjectManager

在对象进行反序列化时对其进行跟踪。

OnDeserializedAttribute

当应用于方法时,指定在反序列化对象关系图中的对象之后立即调用该方法。 相对于关系图中的其他对象,该反序列化的顺序是不确定的。

OnDeserializingAttribute

当应用于方法时,指定在反序列化对象关系图中的对象期间调用该方法。 相对于关系图中的其他对象,该反序列化的顺序是不确定的。

OnSerializedAttribute

当应用于方法时,指定在序列化对象关系图中的对象之后调用该方法。 相对于关系图中的其他对象,序列化的顺序是不确定的。

OnSerializingAttribute

应用于方法时,指定在对象图中的对象序列化期间调用 方法。 相对于关系图中的其他对象,序列化的顺序是不确定的。

OptionalFieldAttribute

指定序列化流中可以缺少一个字段,这样 BinaryFormatterSoapFormatter 就不会引发异常。

SafeSerializationEventArgs

SerializeObjectState 事件提供数据。

SerializationBinder

允许用户控制类加载并指定要加载的类。

SerializationException

当序列化或反序列化过程中发生错误时引发的异常。

SerializationInfo

存储对对象进行序列化或反序列化所需的全部数据。 此类不能被继承。

SerializationInfoEnumerator

提供适用于格式化程序的机制,用于分析 SerializationInfo 中的数据。 此类不能被继承。

SerializationObjectManager

在运行时管理序列化过程。 此类不能被继承。

SurrogateSelector

帮助格式化程序选择要将序列化或反序列化进程委托给的序列化代理项。

XmlObjectSerializer

提供用于将对象序列化为 XML 流或文档的基类。 此类为抽象类。

XmlSerializableServices

包含用于读取和编写 XML 的方法。

XPathQueryGenerator

给定表示数据协定的类和表示此协定的某个成员的元数据时,会为该成员生成 Xpath 查询。

XsdDataContractExporter

用于将数据协定中使用的一组 .NET 类型转换成 XML 架构文件 (.xsd)。

XsdDataContractImporter

用于将一组 XML 架构文件 (.xsd) 转换为公共语言运行库 (CLR) 类型。

结构

SerializationEntry

包含序列化对象的 Type 值以及名称。

StreamingContext

说明给定序列化流的源和目标,并提供另一个调用方定义的上下文。

接口

IDataContractSurrogate

提供 DataContractSerializer 在序列化、反序列化以及导出和导入 XML 架构文档 (XSD) 的过程中将一种类型替换为另一种类型所需的方法。

IDeserializationCallback

指示在完成整个对象图形的反序列化时通知类。 使用 XmlSerializer反序列化时,不会调用此接口。

IExtensibleDataObject

提供一个数据结构,用于存储 XmlObjectSerializer 在反序列化一个用 DataContractAttribute 属性标记的类型期间遇到的额外数据。

IFormatter

提供用于格式化串行化对象的功能。

IFormatterConverter

提供 SerializationInfo 的实例与格式化程序所提供的、最适用于分析 SerializationInfo 中的数据的类之间的连接。

IObjectReference

指示当前接口实施者是对另一个对象的引用。

ISafeSerializationData

启用安全透明的代码中的自定义异常数据的序列化。

ISerializable

允许对象通过二进制和 XML 序列化控制其自己的序列化和反序列化。

ISerializationSurrogate

实现序列化代理项选择器,此选择器允许一个对象对另一个对象执行序列化和反序列化。

ISerializationSurrogateProvider

提供构造用于扩展 DataContractSerializer 的序列化代理项所需的方法。 在序列化和反序列化期间,使用序列化代理项将一种类型替换为另一类型。

ISerializationSurrogateProvider2

提供在导出和导入 XML 架构文档时,DataContractSerializer 将一种类型替换为另一种类型所需的方法, (XSD) 。 此接口基于 构建。ISerializationSurrogateProvider

ISurrogateSelector

指示序列化代理项选择器类。

枚举

EmitTypeInformation

指定发出类型信息的频率。

StreamingContextStates

定义指定序列化期间流的源或目标上下文的一组标志。

注解

通过 ISerializable 接口,类可以执行其自己的序列化行为。 命名空间中的 System.Runtime.Serialization.Formatters 类控制序列化对象中封装的各种数据类型的实际格式设置。

可以在 命名空间中找到 System.Runtime.Serialization.Formatters 将对象序列化和反序列化为特定格式或从特定格式反序列化的格式化程序。