DataContractJsonSerializer 类

定义

将对象序列化为 JavaScript 对象表示法 (JSON),并将 JSON 数据反序列化为对象。 此类不能被继承。

public ref class DataContractJsonSerializer sealed
public ref class DataContractJsonSerializer sealed : System::Runtime::Serialization::XmlObjectSerializer
public sealed class DataContractJsonSerializer
public sealed class DataContractJsonSerializer : System.Runtime.Serialization.XmlObjectSerializer
type DataContractJsonSerializer = class
type DataContractJsonSerializer = class
    inherit XmlObjectSerializer
Public NotInheritable Class DataContractJsonSerializer
Public NotInheritable Class DataContractJsonSerializer
Inherits XmlObjectSerializer
继承
DataContractJsonSerializer
继承
DataContractJsonSerializer

注解

对于涉及序列化为 JSON 和从 JSON 反序列化的大多数方案,建议使用 System.Text.Json 命名空间中的 API

如果方案需要 DataContractJsonSerializer 类,则可以使用它将类型的实例序列化为 JSON 文档,并将 JSON 文档反序列化为类型的实例。 例如,可以使用包含重要数据(如名称和地址)的属性创建一个名为 Person 的类型。 然后,可以创建和操作一个 Person 类实例,并在 JSON 文档中写入所有其属性值以便于以后检索。 可随后将该 JSON 文档反序列化为 Person 类,或者反序列化为另一个具有等效数据协定的类。

如果在服务器上的传出答复的序列化期间发生错误或答复操作由于某种其他原因引发异常,则可能不会将其作为错误返回到客户端。

构造函数

DataContractJsonSerializer(Type)

初始化 DataContractJsonSerializer 类的新实例,以便序列化或反序列化指定类型的对象。

DataContractJsonSerializer(Type, DataContractJsonSerializerSettings)

初始化 DataContractJsonSerializer 类的新实例,以便序列化或反序列化指定类型和序列化设置的对象。

DataContractJsonSerializer(Type, IEnumerable<Type>)

初始化 DataContractJsonSerializer 类的新实例,以便序列化或反序列化指定类型的对象以及可在对象图中呈现的已知类型的集合。

DataContractJsonSerializer(Type, IEnumerable<Type>, Int32, Boolean, IDataContractSurrogate, Boolean)

初始化 DataContractJsonSerializer 类的新实例,以便序列化或反序列化指定类型的对象。 此方法还指定了可在对象图中呈现的已知类型的列表、要序列化或反序列化的最大图项数、是忽略意外数据还是发出类型信息以及自定义序列化的代理项。

DataContractJsonSerializer(Type, String)

使用参数指定的 XML 根元素初始化 DataContractJsonSerializer 类的新实例,以便序列化或反序列化指定类型的对象。

DataContractJsonSerializer(Type, String, IEnumerable<Type>)

使用参数指定的 XML 根元素初始化 DataContractJsonSerializer 类的新实例,以便序列化或反序列化指定类型的对象以及可在对象图中呈现的已知类型的集合。

DataContractJsonSerializer(Type, String, IEnumerable<Type>, Int32, Boolean, IDataContractSurrogate, Boolean)

初始化 DataContractJsonSerializer 类的新实例,以便序列化或反序列化指定类型的对象。 此方法还指定了 XML 元素的根名称、可在对象图中呈现的已知类型的列表、要序列化或反序列化的最大图项数、是忽略意外数据还是发出类型信息以及自定义序列化的代理项。

DataContractJsonSerializer(Type, XmlDictionaryString)

使用类型为 DataContractJsonSerializer 的参数指定的 XML 根元素初始化 XmlDictionaryString 类的新实例,以便序列化或反序列化指定类型的对象。

DataContractJsonSerializer(Type, XmlDictionaryString, IEnumerable<Type>)

使用类型为 DataContractJsonSerializer 的参数指定的 XML 根元素初始化 XmlDictionaryString 类的新实例,以便序列化或反序列化指定类型的对象以及可在对象图中呈现的已知类型的集合。

DataContractJsonSerializer(Type, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, IDataContractSurrogate, Boolean)

初始化 DataContractJsonSerializer 类的新实例,以便序列化或反序列化指定类型的对象。 此方法还指定了 XML 元素的根名称、可在对象图中呈现的已知类型的列表、要序列化或反序列化的最大图项数、是忽略意外数据还是发出类型信息以及自定义序列化的代理项。

属性

DataContractSurrogate

获取给定 IDataContractSurrogate 实例的当前活动代理项类型。 代理项可以扩展序列化或反序列化过程。

DateTimeFormat

获取在对象关系图中日期和时间种类项的格式。

EmitTypeInformation

获取或设置用于发出类型信息的数据协定 JSON 序列化程序设置。

IgnoreExtensionDataObject

获取一个值,指定在反序列化时是否忽略未知数据以及在序列化时是否忽略 IExtensibleDataObject 接口。

KnownTypes

获取一个类型集合,这些类型可能出现在使用此 DataContractJsonSerializer 实例序列化的对象图中。

MaxItemsInObjectGraph

获取序列化程序通过一次读取或写入调用在对象图中序列化或反序列化的最大项数。

SerializeReadOnlyTypes

获取或设置指定是否序列化只读类型的值。

UseSimpleDictionaryFormat

获取指定是否使用简单字典格式的值。

方法

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetSerializationSurrogateProvider()

将对象序列化为 JavaScript 对象表示法 (JSON),并将 JSON 数据反序列化为对象。 此类不能被继承。

GetType()

获取当前实例的 Type

(继承自 Object)
IsStartObject(XmlDictionaryReader)

获取一个值,指定 XmlDictionaryReader 是否定位在 XML 元素上,而该元素表示序列化程序可从中进行反序列化的对象。

IsStartObject(XmlReader)

确定是否将 XmlReader 定位在可反序列化的对象上。

MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ReadObject(Stream)

以 JSON(JavaScript 对象表示法)格式读取文档流,并返回反序列化的对象。

ReadObject(XmlDictionaryReader)

使用 XmlDictionaryReader 读取从 JSON(JavaScript 对象表示法)映射的 XML 文档,并返回反序列化的对象。

ReadObject(XmlDictionaryReader, Boolean)

使用 XmlDictionaryReader 读取从 JSON 映射的 XML 文档并返回反序列化的对象;它还可用于指定序列化程序在尝试反序列化之前是否应验证其定位在相应的元素上。

ReadObject(XmlReader)

使用 XmlReader 读取从 JSON(JavaScript 对象表示法)映射的 XML 文档,并返回反序列化的对象。

ReadObject(XmlReader, Boolean)

使用 XmlReader 读取从 JSON 映射的 XML 文档并返回反序列化的对象;它还可用于指定序列化程序在尝试反序列化之前是否应验证其定位在相应的元素上。

SetSerializationSurrogateProvider(ISerializationSurrogateProvider)

将对象序列化为 JavaScript 对象表示法 (JSON),并将 JSON 数据反序列化为对象。 此类不能被继承。

ToString()

返回表示当前对象的字符串。

(继承自 Object)
WriteEndObject(XmlDictionaryWriter)

使用 XmlDictionaryWriter 将结束 XML 元素写入可映射到 JavaScript 对象表示法 (JSON) 的 XML 文档。

WriteEndObject(XmlWriter)

使用 XmlWriter 将结束 XML 元素写入可映射到 JavaScript 对象表示法 (JSON) 的 XML 文档。

WriteObject(Stream, Object)

将指定对象序列化为 JavaScript 对象表示法 (JSON) 数据,并将生成的 JSON 写入流中。

WriteObject(XmlDictionaryWriter, Object)

将对象序列化为可映射到 JavaScript 对象表示法 (JSON) 的 XML。 使用 XmlDictionaryWriter 写入所有对象数据(包括开始 XML 元素、内容和结束元素)。

WriteObject(XmlWriter, Object)

将对象序列化为可映射到 JavaScript 对象表示法 (JSON) 的 XML。 使用 XmlWriter 写入所有对象数据(包括开始 XML 元素、内容和结束元素)。

WriteObjectContent(XmlDictionaryWriter, Object)

使用 XmlDictionaryWriter 写入可映射到 JavaScript 对象表示法 (JSON) 的 XML 内容。

WriteObjectContent(XmlWriter, Object)

使用 XmlWriter 写入可映射到 JavaScript 对象表示法 (JSON) 的 XML 内容。

WriteStartObject(XmlDictionaryWriter, Object)

使用 XmlDictionaryWriter 写入开始 XML 元素,以便将对象序列化为可映射到 JavaScript 对象表示法 (JSON) 的 XML。

WriteStartObject(XmlWriter, Object)

使用 XmlWriter 写入开始 XML 元素,以便将对象序列化为可映射到 JavaScript 对象表示法 (JSON) 的 XML。

适用于