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 | 指定序列化流中可以缺少一个字段,这样 BinaryFormatter 和 SoapFormatter 就不会引发异常。 | |
SerializationBinder | 允许用户控制类加载并指定要加载的类。 | |
SerializationException | 在序列化或反序列化期间出错时所引发的异常。 | |
SerializationInfo | 存储将对象序列化或反序列化所需的全部数据。无法继承此类。 | |
SerializationInfoEnumerator | 提供一种对格式化程序友好的机制,用于分析 SerializationInfo 中的数据。无法继承此类。 | |
SerializationObjectManager | 在运行时管理序列化过程。无法继承此类。 | |
SurrogateSelector | 帮助格式化程序选择要将序列化或反序列化进程委托给的序列化代理项。 |
接口
接口 | 说明 | |
---|---|---|
IDeserializationCallback | 指示在完成整个对象图形的反序列化时通知类。 | |
IFormatter | 提供将序列化对象格式化的功能。 | |
IFormatterConverter | 提供 SerializationInfo 的实例与格式化程序所提供的、最适用于分析 SerializationInfo 中的数据的类之间的连接。 | |
IObjectReference | 指示当前接口实施者是对另一个对象的引用。 | |
ISerializable | 允许对象控制其自己的序列化和反序列化过程。 | |
ISerializationSurrogate | 实现序列化代理项选择器,此选择器允许一个对象对另一个对象执行序列化和反序列化。 | |
ISurrogateSelector | 指示序列化代理项选择器类。 |
结构
结构 | 说明 | |
---|---|---|
SerializationEntry | 包含序列化对象的 Type 值以及名称。 | |
StreamingContext | 描述给定的序列化流的源和目标,并提供一个由调用方定义的附加上下文。 |
枚举
枚举 | 说明 | |
---|---|---|
StreamingContextStates | 定义一个标记集,用于在序列化过程中指定流的源或目标上下文。 |