System.Runtime.Serialization 命名空间
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
包含可用于序列化和反序列化对象的类。 序列化是将对象或对象图转换为存储或传输到其他位置的线性字节序列的过程。 反序列化是获取存储的信息并从中重新创建对象的过程。
类
| 名称 | 说明 |
|---|---|
| CollectionDataContractAttribute |
应用于集合类型时,启用集合项元素的自定义规范。 此属性只能应用于 DataContractSerializer 识别为有效的可序列化集合的类型。 |
| ContractNamespaceAttribute |
指定数据协定的 CLR 命名空间和 XML 命名空间。 |
| DataContractAttribute |
指定类型定义或实现数据协定,并由序列化程序序列化,例如 DataContractSerializer。 若要使其类型可序列化,类型作者必须为其类型定义数据协定。 |
| DataContractResolver |
提供一种机制,用于在序列化和反序列化期间将类型动态映射到表示形式和从 |
| 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 |
指定序列化流中可能缺少字段,以便 BinaryFormatter 和 SoapFormatter 不会引发异常。 |
| 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 对对象进行序列化和反序列化的格式化程序。