System.Runtime.Serialization 命名空间

System.Runtime.Serialization 命名空间包含可用于将对象序列化和反序列化的类。序列化是将对象或对象图形转换为线性字节序列,以存储或传输到另一个位置的过程。反序列化是接受存储的信息并利用它重新创建对象的过程。

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

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

  说明
公共类 Formatter 提供公共语言运行库序列化格式化程序的基本功能。
公共类 FormatterConverter 表示 IFormatterConverter 接口的基实现,该接口使用 Convert 类和 IConvertible 接口。
公共类 FormatterServices 提供静态方法,以协助实现用于序列化的 Formatter。无法继承此类。
公共类 ObjectIDGenerator 生成对象的 ID。
公共类 ObjectManager 在对象进行反序列化时对其进行跟踪。
公共类 OnDeserializedAttribute 当应用于某方法时,指定在对象反序列化后立即调用此方法。
公共类 OnDeserializingAttribute 当应用至方法时,指定反序列化对象时调用的方法。
公共类 OnSerializedAttribute 如果将对象图应用于某方法,则应指定在序列化该对象图后是否调用该方法。
公共类 OnSerializingAttribute 当应用于某个方法时,指定在对象序列化前调用此方法。
公共类 OptionalFieldAttribute 指定序列化流中可以缺少一个字段,这样 BinaryFormatterSoapFormatter 就不会引发异常。
公共类 SerializationBinder 允许用户控制类加载并指定要加载的类。
公共类 SerializationException 在序列化或反序列化期间出错时所引发的异常。
公共类 SerializationInfo 存储将对象序列化或反序列化所需的全部数据。无法继承此类。
公共类 SerializationInfoEnumerator 提供一种对格式化程序友好的机制,用于分析 SerializationInfo 中的数据。无法继承此类。
公共类 SerializationObjectManager 在运行时管理序列化过程。无法继承此类。
公共类 SurrogateSelector 帮助格式化程序选择要将序列化或反序列化进程委托给的序列化代理项。

接口

  接口 说明
公共接口 IDeserializationCallback 指示在完成整个对象图形的反序列化时通知类。
公共接口 IFormatter 提供将序列化对象格式化的功能。
公共接口 IFormatterConverter 提供 SerializationInfo 的实例与格式化程序所提供的、最适用于分析 SerializationInfo 中的数据的类之间的连接。
公共接口 IObjectReference 指示当前接口实施者是对另一个对象的引用。
公共接口 ISerializable 允许对象控制其自己的序列化和反序列化过程。
公共接口 ISerializationSurrogate 实现序列化代理项选择器,此选择器允许一个对象对另一个对象执行序列化和反序列化。
公共接口 ISurrogateSelector 指示序列化代理项选择器类。

结构

  结构 说明
公共结构 SerializationEntry 包含序列化对象的 Type 值以及名称。
公共结构 StreamingContext 描述给定的序列化流的源和目标,并提供一个由调用方定义的附加上下文。

枚举

  枚举 说明
公共枚举 StreamingContextStates 定义一个标记集,用于在序列化过程中指定流的源或目标上下文。