System.Runtime.Serialization 命名空间  
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
包含可用于序列化和反序列化对象的类。 序列化是将对象或对象图转换为存储或传输到其他位置的线性字节序列的过程。 反序列化是获取存储的信息并从中重新创建对象的过程。
类
| CollectionDataContractAttribute | 应用于集合类型时,启用集合项元素的自定义规范。 此属性只能应用于 DataContractSerializer 识别为有效的可序列化集合的类型。 | 
| ContractNamespaceAttribute | 指定数据协定的 CLR 命名空间和 XML 命名空间。 | 
| DataContractAttribute | 指定类型定义或实现数据协定,并由序列化程序序列化,例如 DataContractSerializer。 若要使其类型可序列化,类型作者必须为其类型定义数据协定。 | 
| DataContractResolver | 提供一种机制,用于在序列化和反序列化期间将类型动态映射到  | 
| DataContractSerializer | 使用提供的数据协定将类型的实例序列化和反序列化为 XML 流或文档。 无法继承此类。 | 
| DataContractSerializerExtensions | 通过提供设置和获取 ISerializationSurrogateProvider的方法来扩展 DataContractSerializer 类。 | 
| DataContractSerializerSettings | 指定数据协定序列化程序设置。 | 
| DataMemberAttribute | 应用于类型的成员时,指定该成员是数据协定的一部分,并由 DataContractSerializer序列化。 | 
| DateTimeFormat | 指定日期/时间格式选项。 | 
| EnumMemberAttribute | 指定字段是枚举成员,应进行序列化。 | 
| ExportOptions | 表示可为 XsdDataContractExporter设置的选项。 | 
| ExtensionDataObject | 存储通过添加新成员扩展的版本化数据协定中的数据。 | 
| Formatter | 为公共语言运行时序列化格式化程序提供基本功能。 | 
| FormatterConverter | 表示使用 Convert 类和 IConvertible 接口的 IFormatterConverter 接口的基本实现。 | 
| FormatterServices | 提供静态方法来帮助实现序列化的 Formatter。 无法继承此类。 | 
| IgnoreDataMemberAttribute | 应用于类型的成员时,指定该成员不是数据协定的一部分,并且未序列化。 | 
| ImportOptions | 表示可在 XsdDataContractImporter上设置的选项。 | 
| InvalidDataContractException | 当 DataContractSerializer 或 NetDataContractSerializer 在序列化和反序列化期间遇到无效数据协定时引发的异常。 | 
| KnownTypeAttribute | 指定在序列化或反序列化给定类型时 DataContractSerializer 应识别的类型。 | 
| NetDataContractSerializer | 使用提供的 .NET Framework 类型将类型的实例序列化和反序列化为 XML 流或文档。 无法继承此类。 | 
| ObjectIDGenerator | 为对象生成 ID。 | 
| ObjectManager | 在反序列化对象时跟踪对象。 | 
| OnDeserializedAttribute | 应用于方法时,指定在对象图中反序列化对象后立即调用该方法。 相对于图形中的其他对象进行反序列化的顺序是不确定的。 | 
| OnDeserializingAttribute | 应用于方法时,指定在对象图中对象反序列化期间调用该方法。 相对于图形中的其他对象进行反序列化的顺序是不确定的。 | 
| OnSerializedAttribute | 应用于方法时,指定在对象图中对象序列化后调用该方法。 相对于图形中的其他对象进行序列化的顺序是不确定的。 | 
| OnSerializingAttribute | 应用于方法时,指定在对象图中对象序列化期间调用该方法。 相对于图形中的其他对象进行序列化的顺序是不确定的。 | 
| OptionalFieldAttribute | 指定序列化流中可能缺少字段,以便 BinaryFormatter 和 SoapFormatter 不会引发异常。 | 
| SafeSerializationEventArgs | 提供 SerializeObjectState 事件的数据。 | 
| SerializationBinder | 允许用户控制类加载并强制加载哪些类。 | 
| SerializationException | 序列化或反序列化期间发生错误时引发的异常。 | 
| SerializationInfo | 存储序列化或反序列化对象所需的所有数据。 无法继承此类。 | 
| SerializationInfoEnumerator | 提供格式化程序友好的机制,用于分析 SerializationInfo中的数据。 无法继承此类。 | 
| SerializationObjectManager | 管理运行时的序列化进程。 无法继承此类。 | 
| SurrogateSelector | 帮助格式化程序选择序列化代理以将序列化或反序列化过程委托给。 | 
| TypeLoadExceptionHolder | 包含可用于序列化和反序列化对象的类。 序列化是将对象或对象图转换为存储或传输到其他位置的线性字节序列的过程。 反序列化是获取存储的信息并从中重新创建对象的过程。 | 
| XmlObjectSerializer | 提供用于将对象序列化为 XML 流或文档的基类。 此类是抽象的。 | 
| XmlSerializableServices | 包含用于读取和写入 XML 的方法。 | 
| XPathQueryGenerator | 如果给定表示数据协定的类和表示协定成员的元数据,则为该成员生成 XPath 查询。 | 
| XsdDataContractExporter | 允许将数据协定中使用的一组 .NET 类型转换为 XML 架构文件(.xsd)。 | 
| XsdDataContractImporter | 允许将一组 XML 架构文件 (.xsd) 转换为公共语言运行时 (CLR) 类型。 | 
结构
| SerializationEntry | 保留序列化对象的值、Type和名称。 | 
| StreamingContext | 描述给定序列化流的源和目标,并提供其他调用方定义的上下文。 | 
接口
| IDataContractSurrogate | 提供在序列化、反序列化和导出和导入 XML 架构文档(XSD)期间由 DataContractSerializer 替换另一种类型所需的方法。 | 
| IDeserializationCallback | 指示在完成整个对象图的反序列化时,将通知类。 使用 XmlSerializer反序列化时,不会调用此接口。 | 
| IExtensibleDataObject | 提供一个数据结构,用于存储用 DataContractAttribute 属性标记的类型反序列化过程中 XmlObjectSerializer 遇到的额外数据。 | 
| IFormatter | 提供格式化序列化对象的功能。 | 
| IFormatterConverter | 提供 SerializationInfo 实例与格式化程序提供的最适合分析 SerializationInfo中的数据的类之间的连接。 | 
| IObjectReference | 指示当前接口实现者是对另一个对象的引用。 | 
| ISafeSerializationData | 在安全透明代码中启用自定义异常数据的序列化。 | 
| ISerializable | 允许对象通过二进制和 XML 序列化来控制其自己的序列化和反序列化。 | 
| ISerializationCodeDomSurrogateProvider | 表示一个 DataContract 代理项提供程序,该提供程序能够使用 System.CodeDom修改生成的类型代码。 | 
| ISerializationSurrogate | 实现序列化代理项选择器,该选择器允许一个对象对另一个对象执行序列化和反序列化。 | 
| ISerializationSurrogateProvider | 提供构造扩展 DataContractSerializer的序列化代理项所需的方法。 序列化和反序列化期间使用序列化代理项来替换一种类型。 | 
| ISerializationSurrogateProvider2 | 提供在导出和导入 XML 架构文档(XSD)期间由 DataContractSerializer 替换另一种类型所需的方法。 此接口基于 ISerializationSurrogateProvider。 | 
| ISurrogateSelector | 指示序列化代理项选择器类。 | 
枚举
| EmitTypeInformation | 指定发出类型信息的频率。 | 
| StreamingContextStates | 定义一组标志,指定序列化期间流的源或目标上下文。 | 
委托
| SerializationEventHandler | 包含可用于序列化和反序列化对象的类。 序列化是将对象或对象图转换为存储或传输到其他位置的线性字节序列的过程。 反序列化是获取存储的信息并从中重新创建对象的过程。 | 
注解
ISerializable 接口为类提供控制其自己的序列化行为的方法。 System.Runtime.Serialization.Formatters 命名空间中的类控制序列化对象中封装的各种数据类型的实际格式。
可以在 System.Runtime.Serialization.Formatters 命名空间中找到序列化和反序列化对象的格式化程序。