System.Runtime.Serialization 命名空间

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

名称 说明
CollectionDataContractAttribute

应用于集合类型时,启用集合项元素的自定义规范。 此属性只能应用于 DataContractSerializer 识别为有效的可序列化集合的类型。

ContractNamespaceAttribute

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

DataContractAttribute

指定类型定义或实现数据协定,并由序列化程序序列化,例如 DataContractSerializer。 若要使其类型可序列化,类型作者必须为其类型定义数据协定。

DataContractResolver

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

DataContractSerializer

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

DataContractSerializerExtensions

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

DataContractSerializerSettings

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

DataMemberAttribute

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

DateTimeFormat

指定日期/时间格式选项。

EnumMemberAttribute

指定字段是枚举成员,应进行序列化。

ExportOptions

表示可以为 . XsdDataContractExporter. 设置的选项。

ExtensionDataObject

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

Formatter

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

FormatterConverter

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

FormatterServices

提供静态方法来帮助实现 Formatter 序列化。 此类不能被继承。

IgnoreDataMemberAttribute

应用于类型的成员时,指定该成员不是数据协定的一部分,并且未序列化。

ImportOptions

表示可在 . XsdDataContractImporter上设置的选项。

InvalidDataContractException

在序列化和反序列化期间或遇到无效数据协定时DataContractSerializerNetDataContractSerializer引发的异常。

KnownTypeAttribute

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

NetDataContractSerializer

使用提供的.NET类型将类型的实例序列化和反序列化为 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

提供在序列化、反序列化和导出和导入 XML 架构文档(XSD)期间替换另 DataContractSerializer 一种类型所需的方法。

IDeserializationCallback

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

IExtensibleDataObject

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

IFormatter

提供格式化序列化对象的功能。

IFormatterConverter

提供实例与格式化程序提供的类之间的连接 SerializationInfo ,最适合分析内部 SerializationInfo的数据。

IObjectReference

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

ISafeSerializationData

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

ISerializable

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

ISerializationSurrogate

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

ISerializationSurrogateProvider

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

ISurrogateSelector

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

枚举

名称 说明
EmitTypeInformation

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

StreamingContextStates

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

注解

ISerializable 接口为类提供了一种控制其自己的序列化行为的方法。 命名空间中的 System.Runtime.Serialization.Formatters 类控制封装在序列化对象中的各种数据类型的实际格式。

可以在命名空间中找到 System.Runtime.Serialization.Formatters 对对象进行序列化和反序列化的格式化程序。