JsonSerializer.Deserialize 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
Deserialize(Stream, JsonTypeInfo)
将表示单个 JSON 值的 UTF-8 编码文本读入由 jsonTypeInfo指定的实例。
流将读取到完成。
public:
static System::Object ^ Deserialize(System::IO::Stream ^ utf8Json, System::Text::Json::Serialization::Metadata::JsonTypeInfo ^ jsonTypeInfo);
public static object? Deserialize(System.IO.Stream utf8Json, System.Text.Json.Serialization.Metadata.JsonTypeInfo jsonTypeInfo);
static member Deserialize : System.IO.Stream * System.Text.Json.Serialization.Metadata.JsonTypeInfo -> obj
Public Function Deserialize (utf8Json As Stream, jsonTypeInfo As JsonTypeInfo) As Object
参数
- utf8Json
- Stream
要分析的 JSON 数据。
- jsonTypeInfo
- JsonTypeInfo
要转换的类型的元数据。
返回
JSON 值的 jsonTypeInfo 表示形式。
例外
utf8Json 或 jsonTypeInfonull。
JSON 无效,或者 Stream 中有剩余数据。
适用于
Deserialize(Utf8JsonReader, Type, JsonSerializerContext)
将提供的读取器中的一个 JSON 值(包括对象或数组)读入 returnType。
public:
static System::Object ^ Deserialize(System::Text::Json::Utf8JsonReader % reader, Type ^ returnType, System::Text::Json::Serialization::JsonSerializerContext ^ context);
public static object? Deserialize(ref System.Text.Json.Utf8JsonReader reader, Type returnType, System.Text.Json.Serialization.JsonSerializerContext context);
static member Deserialize : Utf8JsonReader * Type * System.Text.Json.Serialization.JsonSerializerContext -> obj
Public Function Deserialize (ByRef reader As Utf8JsonReader, returnType As Type, context As JsonSerializerContext) As Object
参数
- reader
- Utf8JsonReader
要读取的读取器。
- returnType
- Type
要转换为和返回的对象的类型。
- context
- JsonSerializerContext
可序列化类型的元数据提供程序。
返回
JSON 值的 returnType 表示形式。
例外
returnType 或 contextnull。
JSON 无效,returnType 与 JSON 不兼容,或者无法从读取器读取值。
reader 使用的是不支持的选项。
returnType 或其可序列化成员没有兼容的 JsonConverter。
提供的 context 上的 GetTypeInfo(Type) 方法未返回 returnType的兼容 JsonTypeInfo。
注解
如果 PropertyName 或 Nonereader 的 TokenType 属性,则读取器将通过一次调用 Read() 来确定值的开始。
此方法完成后,reader 位于 JSON 值中的最终令牌。 如果引发异常,则读取器将重置为调用该方法时处于的状态。
此方法创建读取器所处理的数据的副本,因此,除了此方法的返回之外,不需要调用方维护数据完整性。
用于创建 Utf8JsonReader 实例的 JsonReaderOptions 在冲突时优先于 JsonSerializerOptions。 因此,读取时使用 AllowTrailingCommas、MaxDepth和 CommentHandling。
适用于
Deserialize(JsonNode, Type, JsonSerializerContext)
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
将表示单个 JSON 值的 JsonNode 转换为 returnType。
public:
[System::Runtime::CompilerServices::Extension]
static System::Object ^ Deserialize(System::Text::Json::Nodes::JsonNode ^ node, Type ^ returnType, System::Text::Json::Serialization::JsonSerializerContext ^ context);
public static object? Deserialize(this System.Text.Json.Nodes.JsonNode? node, Type returnType, System.Text.Json.Serialization.JsonSerializerContext context);
static member Deserialize : System.Text.Json.Nodes.JsonNode * Type * System.Text.Json.Serialization.JsonSerializerContext -> obj
<Extension()>
Public Function Deserialize (node As JsonNode, returnType As Type, context As JsonSerializerContext) As Object
参数
- returnType
- Type
要转换为和返回的对象的类型。
- context
- JsonSerializerContext
可序列化类型的元数据提供程序。
返回
JSON 值的 returnType 表示形式。
例外
returnType 或其可序列化成员没有兼容的 JsonConverter。
提供的 contextGetTypeInfo(Type) 方法返回要转换的类型 null。
适用于
Deserialize(JsonNode, Type, JsonSerializerOptions)
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
将表示单个 JSON 值的 JsonNode 转换为 returnType。
public static object? Deserialize(this System.Text.Json.Nodes.JsonNode? node, Type returnType, System.Text.Json.JsonSerializerOptions? options = default);
static member Deserialize : System.Text.Json.Nodes.JsonNode * Type * System.Text.Json.JsonSerializerOptions -> obj
<Extension()>
Public Function Deserialize (node As JsonNode, returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
参数
- returnType
- Type
要转换为和返回的对象的类型。
- options
- JsonSerializerOptions
用于在分析期间控制行为的选项。
返回
JSON 值的 returnType 表示形式。
例外
returnType 与 JSON 不兼容。
returnType 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize(JsonElement, Type, JsonSerializerContext)
将表示单个 JSON 值的 JsonElement 转换为 returnType。
public:
[System::Runtime::CompilerServices::Extension]
static System::Object ^ Deserialize(System::Text::Json::JsonElement element, Type ^ returnType, System::Text::Json::Serialization::JsonSerializerContext ^ context);
public static object? Deserialize(this System.Text.Json.JsonElement element, Type returnType, System.Text.Json.Serialization.JsonSerializerContext context);
static member Deserialize : System.Text.Json.JsonElement * Type * System.Text.Json.Serialization.JsonSerializerContext -> obj
<Extension()>
Public Function Deserialize (element As JsonElement, returnType As Type, context As JsonSerializerContext) As Object
参数
- element
- JsonElement
要转换的 JsonElement。
- returnType
- Type
要转换为和返回的对象的类型。
- context
- JsonSerializerContext
可序列化类型的元数据提供程序。
返回
JSON 值的 returnType 表示形式。
例外
returnType 或其可序列化成员没有兼容的 JsonConverter。
提供的 contextGetTypeInfo(Type) 方法返回要转换的类型 null。
适用于
Deserialize(JsonElement, Type, JsonSerializerOptions)
将表示单个 JSON 值的 JsonElement 转换为 returnType。
public static object? Deserialize(this System.Text.Json.JsonElement element, Type returnType, System.Text.Json.JsonSerializerOptions? options = default);
static member Deserialize : System.Text.Json.JsonElement * Type * System.Text.Json.JsonSerializerOptions -> obj
<Extension()>
Public Function Deserialize (element As JsonElement, returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
参数
- element
- JsonElement
要转换的 JsonElement。
- returnType
- Type
要转换为和返回的对象的类型。
- options
- JsonSerializerOptions
用于在分析期间控制行为的选项。
返回
JSON 值的 returnType 表示形式。
例外
returnType
null。
returnType 与 JSON 不兼容。
returnType 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize(JsonDocument, Type, JsonSerializerContext)
将表示单个 JSON 值的 JsonDocument 转换为 returnType。
public:
[System::Runtime::CompilerServices::Extension]
static System::Object ^ Deserialize(System::Text::Json::JsonDocument ^ document, Type ^ returnType, System::Text::Json::Serialization::JsonSerializerContext ^ context);
public static object? Deserialize(this System.Text.Json.JsonDocument document, Type returnType, System.Text.Json.Serialization.JsonSerializerContext context);
static member Deserialize : System.Text.Json.JsonDocument * Type * System.Text.Json.Serialization.JsonSerializerContext -> obj
<Extension()>
Public Function Deserialize (document As JsonDocument, returnType As Type, context As JsonSerializerContext) As Object
参数
- document
- JsonDocument
要转换的 JsonDocument。
- returnType
- Type
要转换为和返回的对象的类型。
- context
- JsonSerializerContext
可序列化类型的元数据提供程序。
返回
JSON 值的 returnType 表示形式。
例外
returnType 或其可序列化成员没有兼容的 JsonConverter。
提供的 contextGetTypeInfo(Type) 方法返回要转换的类型 null。
适用于
Deserialize(JsonDocument, Type, JsonSerializerOptions)
将表示单个 JSON 值的 JsonDocument 转换为 returnType。
public static object? Deserialize(this System.Text.Json.JsonDocument document, Type returnType, System.Text.Json.JsonSerializerOptions? options = default);
static member Deserialize : System.Text.Json.JsonDocument * Type * System.Text.Json.JsonSerializerOptions -> obj
<Extension()>
Public Function Deserialize (document As JsonDocument, returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
参数
- document
- JsonDocument
要转换的 JsonDocument。
- returnType
- Type
要转换为和返回的对象的类型。
- options
- JsonSerializerOptions
用于在分析期间控制行为的选项。
返回
JSON 值的 returnType 表示形式。
例外
document 或 returnTypenull。
returnType 与 JSON 不兼容。
returnType 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize(String, Type, JsonSerializerContext)
将表示单个 JSON 值的文本分析为 returnType。
public:
static System::Object ^ Deserialize(System::String ^ json, Type ^ returnType, System::Text::Json::Serialization::JsonSerializerContext ^ context);
public static object? Deserialize(string json, Type returnType, System.Text.Json.Serialization.JsonSerializerContext context);
static member Deserialize : string * Type * System.Text.Json.Serialization.JsonSerializerContext -> obj
Public Function Deserialize (json As String, returnType As Type, context As JsonSerializerContext) As Object
参数
- json
- String
要分析的 JSON 文本。
- returnType
- Type
要转换为和返回的对象的类型。
- context
- JsonSerializerContext
可序列化类型的元数据提供程序。
返回
JSON 值的 returnType 表示形式。
例外
returnType 或其可序列化成员没有兼容的 JsonConverter。
提供的 contextGetTypeInfo(Type) 方法返回要转换的类型 null。
注解
使用 String 不像使用 UTF-8 方法那么高效,因为实现本机使用 UTF-8。
适用于
Deserialize(String, Type, JsonSerializerOptions)
将表示单个 JSON 值的文本分析为指定类型的实例。
public static object? Deserialize(string json, Type returnType, System.Text.Json.JsonSerializerOptions? options = default);
public static object Deserialize(string json, Type returnType, System.Text.Json.JsonSerializerOptions options = default);
static member Deserialize : string * Type * System.Text.Json.JsonSerializerOptions -> obj
Public Function Deserialize (json As String, returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
Public Shared Function Deserialize (json As String, returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
参数
- json
- String
要分析的 JSON 文本。
- returnType
- Type
要转换为和返回的对象的类型。
- options
- JsonSerializerOptions
用于在分析期间控制行为的选项。
返回
JSON 值的 returnType 表示形式。
例外
json 或 returnTypenull。
returnType 或其可序列化成员没有兼容的 JsonConverter。
注解
使用 String 不像使用 UTF-8 方法那么高效,因为实现本机使用 UTF-8。
有关详细信息,请参阅 如何序列化和反序列化 JSON。
适用于
Deserialize(ReadOnlySpan<Char>, Type, JsonSerializerContext)
将表示单个 JSON 值的文本分析为 returnType。
public:
static System::Object ^ Deserialize(ReadOnlySpan<char> json, Type ^ returnType, System::Text::Json::Serialization::JsonSerializerContext ^ context);
public static object? Deserialize(ReadOnlySpan<char> json, Type returnType, System.Text.Json.Serialization.JsonSerializerContext context);
static member Deserialize : ReadOnlySpan<char> * Type * System.Text.Json.Serialization.JsonSerializerContext -> obj
Public Function Deserialize (json As ReadOnlySpan(Of Char), returnType As Type, context As JsonSerializerContext) As Object
参数
- json
- ReadOnlySpan<Char>
要分析的 JSON 文本。
- returnType
- Type
要转换为和返回的对象的类型。
- context
- JsonSerializerContext
可序列化类型的元数据提供程序。
返回
JSON 值的 returnType 表示形式。
例外
returnType 或其可序列化成员没有兼容的 JsonConverter。
提供的 contextGetTypeInfo(Type) 方法返回要转换的类型 null。
注解
使用 String 不像使用 UTF-8 方法那么高效,因为实现本机使用 UTF-8。
适用于
Deserialize(ReadOnlySpan<Char>, Type, JsonSerializerOptions)
将表示单个 JSON 值的文本分析为指定类型的实例。
public static object? Deserialize(ReadOnlySpan<char> json, Type returnType, System.Text.Json.JsonSerializerOptions? options = default);
static member Deserialize : ReadOnlySpan<char> * Type * System.Text.Json.JsonSerializerOptions -> obj
Public Function Deserialize (json As ReadOnlySpan(Of Char), returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
参数
- json
- ReadOnlySpan<Char>
要分析的 JSON 文本。
- returnType
- Type
要转换为和返回的对象的类型。
- options
- JsonSerializerOptions
用于在分析期间控制行为的选项。
返回
JSON 值的 returnType 表示形式。
例外
returnType
null。
returnType 或其可序列化成员没有兼容的 JsonConverter。
注解
使用 UTF-16 范围不像使用 UTF-8 方法那样高效,因为实现本机使用 UTF-8。
适用于
Deserialize(Utf8JsonReader, Type, JsonSerializerOptions)
从提供的读取器读取一个 JSON 值(包括对象或数组),并将其转换为指定类型的实例。
public static object? Deserialize(ref System.Text.Json.Utf8JsonReader reader, Type returnType, System.Text.Json.JsonSerializerOptions? options = default);
public static object Deserialize(ref System.Text.Json.Utf8JsonReader reader, Type returnType, System.Text.Json.JsonSerializerOptions options = default);
static member Deserialize : Utf8JsonReader * Type * System.Text.Json.JsonSerializerOptions -> obj
Public Function Deserialize (ByRef reader As Utf8JsonReader, returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
Public Shared Function Deserialize (ByRef reader As Utf8JsonReader, returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
参数
- reader
- Utf8JsonReader
要从中读取 JSON 的读取器。
- returnType
- Type
要转换为和返回的对象的类型。
- options
- JsonSerializerOptions
用于在读取期间控制序列化程序行为的选项。
返回
JSON 值的 returnType 表示形式。
例外
returnType
null。
reader 使用的是不支持的选项。
returnType 或其可序列化成员没有兼容的 JsonConverter。
注解
如果 JsonTokenType.PropertyName 或 JsonTokenType.Nonereader 的 TokenType 属性,则读取器将通过一次调用 Utf8JsonReader.Read() 来确定值的开始。
完成此方法后,reader 将放置在 JSON 值中的最终令牌上。 如果引发异常,则读取器将重置为调用该方法时处于的状态。
此方法创建读取器所处理的数据的副本,因此,除了此方法的返回之外,不需要调用方维护数据完整性。
用于创建 Utf8JsonReader 实例的 JsonReaderOptions 在冲突时优先于 JsonSerializerOptions。 因此,读取时使用 JsonReaderOptions.AllowTrailingCommas、JsonReaderOptions.MaxDepth和 JsonReaderOptions.CommentHandling。
有关详细信息,请参阅 如何序列化和反序列化 JSON。
适用于
Deserialize(ReadOnlySpan<Byte>, Type, JsonSerializerOptions)
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
将表示单个 JSON 值的 UTF-8 编码文本分析为指定类型的实例。
public static object? Deserialize(ReadOnlySpan<byte> utf8Json, Type returnType, System.Text.Json.JsonSerializerOptions? options = default);
public static object Deserialize(ReadOnlySpan<byte> utf8Json, Type returnType, System.Text.Json.JsonSerializerOptions options = default);
static member Deserialize : ReadOnlySpan<byte> * Type * System.Text.Json.JsonSerializerOptions -> obj
Public Function Deserialize (utf8Json As ReadOnlySpan(Of Byte), returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
Public Shared Function Deserialize (utf8Json As ReadOnlySpan(Of Byte), returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
参数
- utf8Json
- ReadOnlySpan<Byte>
要分析的 JSON 文本。
- returnType
- Type
要转换为和返回的对象的类型。
- options
- JsonSerializerOptions
用于在分析期间控制行为的选项。
返回
JSON 值的 returnType 表示形式。
例外
returnType
null。
returnType 或其可序列化成员没有兼容的 JsonConverter。
注解
有关详细信息,请参阅 如何序列化和反序列化 JSON。
适用于
Deserialize(Stream, Type, JsonSerializerContext)
将表示单个 JSON 值的 UTF-8 编码文本读入 returnType。
流将读取到完成。
public:
static System::Object ^ Deserialize(System::IO::Stream ^ utf8Json, Type ^ returnType, System::Text::Json::Serialization::JsonSerializerContext ^ context);
public static object? Deserialize(System.IO.Stream utf8Json, Type returnType, System.Text.Json.Serialization.JsonSerializerContext context);
static member Deserialize : System.IO.Stream * Type * System.Text.Json.Serialization.JsonSerializerContext -> obj
Public Function Deserialize (utf8Json As Stream, returnType As Type, context As JsonSerializerContext) As Object
参数
- utf8Json
- Stream
要分析的 JSON 数据。
- returnType
- Type
要转换为和返回的对象的类型。
- context
- JsonSerializerContext
可序列化类型的元数据提供程序。
返回
JSON 值的 returnType 表示形式。
例外
utf8Json、returnType或 contextnull。
JSON 无效,returnType 与 JSON 不兼容,或者 Stream 中有剩余数据。
returnType 或其可序列化成员没有兼容的 JsonConverter。
提供的 context 上的 GetTypeInfo(Type) 方法未返回 returnType的兼容 JsonTypeInfo。
适用于
Deserialize(Stream, Type, JsonSerializerOptions)
将表示单个 JSON 值的 UTF-8 编码文本读入 returnType。
流将读取到完成。
public static object? Deserialize(System.IO.Stream utf8Json, Type returnType, System.Text.Json.JsonSerializerOptions? options = default);
static member Deserialize : System.IO.Stream * Type * System.Text.Json.JsonSerializerOptions -> obj
Public Function Deserialize (utf8Json As Stream, returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
参数
- utf8Json
- Stream
要分析的 JSON 数据。
- returnType
- Type
要转换为和返回的对象的类型。
- options
- JsonSerializerOptions
用于控制读取过程中行为的选项。
返回
JSON 值的 returnType 表示形式。
例外
utf8Json 或 returnTypenull。
JSON 无效,returnType 与 JSON 不兼容,或者 Stream 中有剩余数据。
returnType 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize(Utf8JsonReader, JsonTypeInfo)
将提供的读取器中的一个 JSON 值(包括对象或数组)读取到由 jsonTypeInfo指定的实例中。
public:
static System::Object ^ Deserialize(System::Text::Json::Utf8JsonReader % reader, System::Text::Json::Serialization::Metadata::JsonTypeInfo ^ jsonTypeInfo);
public static object? Deserialize(ref System.Text.Json.Utf8JsonReader reader, System.Text.Json.Serialization.Metadata.JsonTypeInfo jsonTypeInfo);
static member Deserialize : Utf8JsonReader * System.Text.Json.Serialization.Metadata.JsonTypeInfo -> obj
Public Function Deserialize (ByRef reader As Utf8JsonReader, jsonTypeInfo As JsonTypeInfo) As Object
参数
- reader
- Utf8JsonReader
要读取的读取器。
- jsonTypeInfo
- JsonTypeInfo
要转换的类型的元数据。
返回
JSON 值的 jsonTypeInfo 表示形式。
例外
JSON 无效,jsonTypeInfo 与 JSON 不兼容,或者无法从读取器读取值。
reader 使用的是不支持的选项。
注解
如果 PropertyName 或 Nonereader 的 TokenType 属性,则读取器将通过一次调用 Read() 来确定值的开始。
完成此方法后,reader 将放置在 JSON 值中的最终令牌上。 如果引发异常,则读取器将重置为调用该方法时处于的状态。
此方法创建读取器所处理的数据的副本,因此,除了此方法的返回之外,不需要调用方维护数据完整性。
用于创建 Utf8JsonReader 实例的 JsonReaderOptions 在冲突时优先于 JsonSerializerOptions。 因此,读取时使用 AllowTrailingCommas、MaxDepth和 CommentHandling。
适用于
Deserialize(JsonNode, JsonTypeInfo)
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
将表示单个 JSON 值的 JsonNode 转换为由 jsonTypeInfo指定的实例。
public:
[System::Runtime::CompilerServices::Extension]
static System::Object ^ Deserialize(System::Text::Json::Nodes::JsonNode ^ node, System::Text::Json::Serialization::Metadata::JsonTypeInfo ^ jsonTypeInfo);
public static object? Deserialize(this System.Text.Json.Nodes.JsonNode? node, System.Text.Json.Serialization.Metadata.JsonTypeInfo jsonTypeInfo);
static member Deserialize : System.Text.Json.Nodes.JsonNode * System.Text.Json.Serialization.Metadata.JsonTypeInfo -> obj
<Extension()>
Public Function Deserialize (node As JsonNode, jsonTypeInfo As JsonTypeInfo) As Object
参数
- jsonTypeInfo
- JsonTypeInfo
要转换的类型的元数据。
返回
JSON 值的 jsonTypeInfo 表示形式。
例外
jsonTypeInfo
null。
适用于
Deserialize(JsonElement, JsonTypeInfo)
将表示单个 JSON 值的 JsonElement 转换为由 jsonTypeInfo指定的实例。
public:
[System::Runtime::CompilerServices::Extension]
static System::Object ^ Deserialize(System::Text::Json::JsonElement element, System::Text::Json::Serialization::Metadata::JsonTypeInfo ^ jsonTypeInfo);
public static object? Deserialize(this System.Text.Json.JsonElement element, System.Text.Json.Serialization.Metadata.JsonTypeInfo jsonTypeInfo);
static member Deserialize : System.Text.Json.JsonElement * System.Text.Json.Serialization.Metadata.JsonTypeInfo -> obj
<Extension()>
Public Function Deserialize (element As JsonElement, jsonTypeInfo As JsonTypeInfo) As Object
参数
- element
- JsonElement
要转换的 JsonElement。
- jsonTypeInfo
- JsonTypeInfo
要转换的类型的元数据。
返回
JSON 值的 jsonTypeInfo 表示形式。
例外
jsonTypeInfo
null。
适用于
Deserialize(JsonDocument, JsonTypeInfo)
将表示单个 JSON 值的 JsonDocument 转换为由 jsonTypeInfo指定的实例。
public:
[System::Runtime::CompilerServices::Extension]
static System::Object ^ Deserialize(System::Text::Json::JsonDocument ^ document, System::Text::Json::Serialization::Metadata::JsonTypeInfo ^ jsonTypeInfo);
public static object? Deserialize(this System.Text.Json.JsonDocument document, System.Text.Json.Serialization.Metadata.JsonTypeInfo jsonTypeInfo);
static member Deserialize : System.Text.Json.JsonDocument * System.Text.Json.Serialization.Metadata.JsonTypeInfo -> obj
<Extension()>
Public Function Deserialize (document As JsonDocument, jsonTypeInfo As JsonTypeInfo) As Object
参数
- document
- JsonDocument
要转换的 JsonDocument。
- jsonTypeInfo
- JsonTypeInfo
要转换的类型的元数据。
返回
JSON 值的 jsonTypeInfo 表示形式。
例外
适用于
Deserialize(String, JsonTypeInfo)
将表示单个 JSON 值的文本分析为由 jsonTypeInfo指定的实例。
public:
static System::Object ^ Deserialize(System::String ^ json, System::Text::Json::Serialization::Metadata::JsonTypeInfo ^ jsonTypeInfo);
public static object? Deserialize(string json, System.Text.Json.Serialization.Metadata.JsonTypeInfo jsonTypeInfo);
static member Deserialize : string * System.Text.Json.Serialization.Metadata.JsonTypeInfo -> obj
Public Function Deserialize (json As String, jsonTypeInfo As JsonTypeInfo) As Object
参数
- json
- String
要分析的 JSON 文本。
- jsonTypeInfo
- JsonTypeInfo
要转换的类型的元数据。
返回
JSON 值的 jsonTypeInfo 表示形式。
例外
注解
使用 String 不像使用 UTF-8 方法那么高效,因为实现本机使用 UTF-8。
适用于
Deserialize(ReadOnlySpan<Char>, JsonTypeInfo)
将表示单个 JSON 值的文本分析为由 jsonTypeInfo指定的实例。
public:
static System::Object ^ Deserialize(ReadOnlySpan<char> json, System::Text::Json::Serialization::Metadata::JsonTypeInfo ^ jsonTypeInfo);
public static object? Deserialize(ReadOnlySpan<char> json, System.Text.Json.Serialization.Metadata.JsonTypeInfo jsonTypeInfo);
static member Deserialize : ReadOnlySpan<char> * System.Text.Json.Serialization.Metadata.JsonTypeInfo -> obj
Public Function Deserialize (json As ReadOnlySpan(Of Char), jsonTypeInfo As JsonTypeInfo) As Object
参数
- json
- ReadOnlySpan<Char>
要分析的 JSON 文本。
- jsonTypeInfo
- JsonTypeInfo
要转换的类型的元数据。
返回
JSON 值的 jsonTypeInfo 表示形式。
例外
jsonTypeInfo
null。
注解
使用 String 不像使用 UTF-8 方法那么高效,因为实现本机使用 UTF-8。
适用于
Deserialize(ReadOnlySpan<Byte>, Type, JsonSerializerContext)
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
将表示单个 JSON 值的 UTF-8 编码文本分析为 returnType。
public:
static System::Object ^ Deserialize(ReadOnlySpan<System::Byte> utf8Json, Type ^ returnType, System::Text::Json::Serialization::JsonSerializerContext ^ context);
public static object? Deserialize(ReadOnlySpan<byte> utf8Json, Type returnType, System.Text.Json.Serialization.JsonSerializerContext context);
static member Deserialize : ReadOnlySpan<byte> * Type * System.Text.Json.Serialization.JsonSerializerContext -> obj
Public Function Deserialize (utf8Json As ReadOnlySpan(Of Byte), returnType As Type, context As JsonSerializerContext) As Object
参数
- utf8Json
- ReadOnlySpan<Byte>
要分析的 JSON 文本。
- returnType
- Type
要转换为和返回的对象的类型。
- context
- JsonSerializerContext
可序列化类型的元数据提供程序。
返回
JSON 值的 returnType 表示形式。
例外
returnType
null。
JSON 无效,returnType 与 JSON 不兼容,或者 Stream 中有剩余数据。
returnType 或其可序列化成员没有兼容的 JsonConverter。
提供的 context 上的 GetTypeInfo(Type) 方法未返回 returnType的兼容 JsonTypeInfo。
适用于
Deserialize(ReadOnlySpan<Byte>, JsonTypeInfo)
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
将表示单个 JSON 值的 UTF-8 编码文本分析为由 jsonTypeInfo指定的实例。
public:
static System::Object ^ Deserialize(ReadOnlySpan<System::Byte> utf8Json, System::Text::Json::Serialization::Metadata::JsonTypeInfo ^ jsonTypeInfo);
public static object? Deserialize(ReadOnlySpan<byte> utf8Json, System.Text.Json.Serialization.Metadata.JsonTypeInfo jsonTypeInfo);
static member Deserialize : ReadOnlySpan<byte> * System.Text.Json.Serialization.Metadata.JsonTypeInfo -> obj
Public Function Deserialize (utf8Json As ReadOnlySpan(Of Byte), jsonTypeInfo As JsonTypeInfo) As Object
参数
- utf8Json
- ReadOnlySpan<Byte>
要分析的 JSON 文本。
- jsonTypeInfo
- JsonTypeInfo
要转换的类型的元数据。
返回
JSON 值的 jsonTypeInfo 表示形式。
例外
JSON 无效,或缓冲区中存在剩余数据。
适用于
Deserialize<TValue>(JsonElement, JsonSerializerOptions)
将表示单个 JSON 值的 JsonElement 转换为 TValue。
public static TValue? Deserialize<TValue>(this System.Text.Json.JsonElement element, System.Text.Json.JsonSerializerOptions? options = default);
static member Deserialize : System.Text.Json.JsonElement * System.Text.Json.JsonSerializerOptions -> 'Value
<Extension()>
Public Function Deserialize(Of TValue) (element As JsonElement, Optional options As JsonSerializerOptions = Nothing) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- element
- JsonElement
要转换的 JsonElement。
- options
- JsonSerializerOptions
用于在分析期间控制行为的选项。
返回
JSON 值的 TValue 表示形式。
例外
TValue 与 JSON 不兼容。
TValue 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize<TValue>(JsonElement, JsonTypeInfo<TValue>)
将表示单个 JSON 值的 JsonElement 转换为 TValue。
public:
generic <typename TValue>
[System::Runtime::CompilerServices::Extension]
static TValue Deserialize(System::Text::Json::JsonElement element, System::Text::Json::Serialization::Metadata::JsonTypeInfo<TValue> ^ jsonTypeInfo);
public static TValue? Deserialize<TValue>(this System.Text.Json.JsonElement element, System.Text.Json.Serialization.Metadata.JsonTypeInfo<TValue> jsonTypeInfo);
static member Deserialize : System.Text.Json.JsonElement * System.Text.Json.Serialization.Metadata.JsonTypeInfo<'Value> -> 'Value
<Extension()>
Public Function Deserialize(Of TValue) (element As JsonElement, jsonTypeInfo As JsonTypeInfo(Of TValue)) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- element
- JsonElement
要转换的 JsonElement。
- jsonTypeInfo
- JsonTypeInfo<TValue>
要转换的类型的元数据。
返回
JSON 值的 TValue 表示形式。
例外
jsonTypeInfo
null。
TValue 与 JSON 不兼容。
TValue 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize<TValue>(Utf8JsonReader, JsonTypeInfo<TValue>)
将提供的读取器中的一个 JSON 值(包括对象或数组)读入 TValue。
public:
generic <typename TValue>
static TValue Deserialize(System::Text::Json::Utf8JsonReader % reader, System::Text::Json::Serialization::Metadata::JsonTypeInfo<TValue> ^ jsonTypeInfo);
public static TValue? Deserialize<TValue>(ref System.Text.Json.Utf8JsonReader reader, System.Text.Json.Serialization.Metadata.JsonTypeInfo<TValue> jsonTypeInfo);
static member Deserialize : Utf8JsonReader * System.Text.Json.Serialization.Metadata.JsonTypeInfo<'Value> -> 'Value
Public Function Deserialize(Of TValue) (ByRef reader As Utf8JsonReader, jsonTypeInfo As JsonTypeInfo(Of TValue)) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- reader
- Utf8JsonReader
要读取的读取器。
- jsonTypeInfo
- JsonTypeInfo<TValue>
要转换的类型的元数据。
返回
JSON 值的 TValue 表示形式。
例外
JSON 无效,TValue 与 JSON 不兼容,或者无法从读取器读取值。
reader 使用的是不支持的选项。
TValue 或其可序列化成员没有兼容的 JsonConverter。
注解
如果 PropertyName 或 Nonereader 的 TokenType 属性,则读取器将通过一次调用 Read() 来确定值的开始。
此方法完成后,reader 位于 JSON 值中的最终令牌。 如果引发异常,则读取器将重置为调用该方法时处于的状态。
此方法创建读取器所处理的数据的副本,因此,除了此方法的返回之外,不需要调用方维护数据完整性。
用于创建 Utf8JsonReader 实例的 JsonReaderOptions 在冲突时优先于 JsonSerializerOptions。 因此,读取时使用 AllowTrailingCommas、MaxDepth和 CommentHandling。
适用于
Deserialize<TValue>(JsonNode, JsonTypeInfo<TValue>)
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
将表示单个 JSON 值的 JsonNode 转换为 TValue。
public:
generic <typename TValue>
[System::Runtime::CompilerServices::Extension]
static TValue Deserialize(System::Text::Json::Nodes::JsonNode ^ node, System::Text::Json::Serialization::Metadata::JsonTypeInfo<TValue> ^ jsonTypeInfo);
public static TValue? Deserialize<TValue>(this System.Text.Json.Nodes.JsonNode? node, System.Text.Json.Serialization.Metadata.JsonTypeInfo<TValue> jsonTypeInfo);
static member Deserialize : System.Text.Json.Nodes.JsonNode * System.Text.Json.Serialization.Metadata.JsonTypeInfo<'Value> -> 'Value
<Extension()>
Public Function Deserialize(Of TValue) (node As JsonNode, jsonTypeInfo As JsonTypeInfo(Of TValue)) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- jsonTypeInfo
- JsonTypeInfo<TValue>
要转换的类型的元数据。
返回
JSON 值的 TValue 表示形式。
例外
jsonTypeInfo
null。
TValue 与 JSON 不兼容。
TValue 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize<TValue>(Utf8JsonReader, JsonSerializerOptions)
将提供的读取器中的一个 JSON 值(包括对象或数组)读取到泛型类型参数指定的类型的实例中。
public static TValue? Deserialize<TValue>(ref System.Text.Json.Utf8JsonReader reader, System.Text.Json.JsonSerializerOptions? options = default);
public static TValue Deserialize<TValue>(ref System.Text.Json.Utf8JsonReader reader, System.Text.Json.JsonSerializerOptions options = default);
static member Deserialize : Utf8JsonReader * System.Text.Json.JsonSerializerOptions -> 'Value
Public Function Deserialize(Of TValue) (ByRef reader As Utf8JsonReader, Optional options As JsonSerializerOptions = Nothing) As TValue
Public Shared Function Deserialize(Of TValue) (ByRef reader As Utf8JsonReader, Optional options As JsonSerializerOptions = Nothing) As TValue
类型参数
- TValue
JSON 值的目标类型。
参数
- reader
- Utf8JsonReader
要从中读取 JSON 的读取器。
- options
- JsonSerializerOptions
用于在读取期间控制序列化程序行为的选项。
返回
JSON 值的 TValue 表示形式。
例外
reader 使用不支持的选项。
TValue 或其可序列化成员没有兼容的 JsonConverter。
注解
如果 JsonTokenType.PropertyName 或 JsonTokenType.Nonereader 的 TokenType 属性,则读取器将通过一次调用 Utf8JsonReader.Read() 来确定值的开始。
完成此方法后,reader 将放置在 JSON 值中的最终令牌上。 如果引发异常,则读取器将重置为调用该方法时处于的状态。
此方法创建读取器所处理的数据的副本,因此,除了此方法的返回之外,不需要调用方维护数据完整性。
用于创建 Utf8JsonReader 实例的 JsonReaderOptions 在冲突时优先于 JsonSerializerOptions。 因此,读取时使用 JsonReaderOptions.AllowTrailingCommas、JsonReaderOptions.MaxDepth和 JsonReaderOptions.CommentHandling。
有关详细信息,请参阅 如何序列化和反序列化 JSON。
适用于
Deserialize<TValue>(JsonDocument, JsonTypeInfo<TValue>)
将表示单个 JSON 值的 JsonDocument 转换为 TValue。
public:
generic <typename TValue>
[System::Runtime::CompilerServices::Extension]
static TValue Deserialize(System::Text::Json::JsonDocument ^ document, System::Text::Json::Serialization::Metadata::JsonTypeInfo<TValue> ^ jsonTypeInfo);
public static TValue? Deserialize<TValue>(this System.Text.Json.JsonDocument document, System.Text.Json.Serialization.Metadata.JsonTypeInfo<TValue> jsonTypeInfo);
static member Deserialize : System.Text.Json.JsonDocument * System.Text.Json.Serialization.Metadata.JsonTypeInfo<'Value> -> 'Value
<Extension()>
Public Function Deserialize(Of TValue) (document As JsonDocument, jsonTypeInfo As JsonTypeInfo(Of TValue)) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- document
- JsonDocument
要转换的 JsonDocument。
- jsonTypeInfo
- JsonTypeInfo<TValue>
要转换的类型的元数据。
返回
JSON 值的 TValue 表示形式。
例外
TValue 与 JSON 不兼容。
TValue 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize<TValue>(JsonNode, JsonSerializerOptions)
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
- Source:
- JsonSerializer.Read.Node.cs
将表示单个 JSON 值的 JsonNode 转换为 TValue。
public static TValue? Deserialize<TValue>(this System.Text.Json.Nodes.JsonNode? node, System.Text.Json.JsonSerializerOptions? options = default);
static member Deserialize : System.Text.Json.Nodes.JsonNode * System.Text.Json.JsonSerializerOptions -> 'Value
<Extension()>
Public Function Deserialize(Of TValue) (node As JsonNode, Optional options As JsonSerializerOptions = Nothing) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- options
- JsonSerializerOptions
用于在分析期间控制行为的选项。
返回
JSON 值的 TValue 表示形式。
例外
TValue 与 JSON 不兼容。
TValue 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize<TValue>(JsonDocument, JsonSerializerOptions)
将表示单个 JSON 值的 JsonDocument 转换为 TValue。
public static TValue? Deserialize<TValue>(this System.Text.Json.JsonDocument document, System.Text.Json.JsonSerializerOptions? options = default);
static member Deserialize : System.Text.Json.JsonDocument * System.Text.Json.JsonSerializerOptions -> 'Value
<Extension()>
Public Function Deserialize(Of TValue) (document As JsonDocument, Optional options As JsonSerializerOptions = Nothing) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- document
- JsonDocument
要转换的 JsonDocument。
- options
- JsonSerializerOptions
用于在分析期间控制行为的选项。
返回
JSON 值的 TValue 表示形式。
例外
document
null。
TValue 与 JSON 不兼容。
TValue 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize<TValue>(ReadOnlySpan<Char>, JsonTypeInfo<TValue>)
将表示单个 JSON 值的文本分析为 TValue。
public:
generic <typename TValue>
static TValue Deserialize(ReadOnlySpan<char> json, System::Text::Json::Serialization::Metadata::JsonTypeInfo<TValue> ^ jsonTypeInfo);
public static TValue? Deserialize<TValue>(ReadOnlySpan<char> json, System.Text.Json.Serialization.Metadata.JsonTypeInfo<TValue> jsonTypeInfo);
static member Deserialize : ReadOnlySpan<char> * System.Text.Json.Serialization.Metadata.JsonTypeInfo<'Value> -> 'Value
Public Function Deserialize(Of TValue) (json As ReadOnlySpan(Of Char), jsonTypeInfo As JsonTypeInfo(Of TValue)) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- json
- ReadOnlySpan<Char>
要分析的 JSON 文本。
- jsonTypeInfo
- JsonTypeInfo<TValue>
要转换的类型的元数据。
返回
JSON 值的 TValue 表示形式。
例外
TValue 或其可序列化成员没有兼容的 JsonConverter。
注解
使用 String 不像使用 UTF-8 方法那么高效,因为实现本机使用 UTF-8。
适用于
Deserialize<TValue>(String, JsonSerializerOptions)
将表示单个 JSON 值的文本分析为泛型类型参数指定的类型的实例。
public static TValue? Deserialize<TValue>(string json, System.Text.Json.JsonSerializerOptions? options = default);
public static TValue Deserialize<TValue>(string json, System.Text.Json.JsonSerializerOptions options = default);
static member Deserialize : string * System.Text.Json.JsonSerializerOptions -> 'Value
Public Function Deserialize(Of TValue) (json As String, Optional options As JsonSerializerOptions = Nothing) As TValue
Public Shared Function Deserialize(Of TValue) (json As String, Optional options As JsonSerializerOptions = Nothing) As TValue
类型参数
- TValue
JSON 值的目标类型。
参数
- json
- String
要分析的 JSON 文本。
- options
- JsonSerializerOptions
用于在分析期间控制行为的选项。
返回
JSON 值的 TValue 表示形式。
例外
json
null。
TValue 或其可序列化成员没有兼容的 JsonConverter。
注解
使用 String 不像使用 UTF-8 方法那么高效,因为实现本机使用 UTF-8。
有关详细信息,请参阅 如何序列化和反序列化 JSON。
适用于
Deserialize<TValue>(ReadOnlySpan<Char>, JsonSerializerOptions)
将表示单个 JSON 值的文本分析为泛型类型参数指定的类型的实例。
public static TValue? Deserialize<TValue>(ReadOnlySpan<char> json, System.Text.Json.JsonSerializerOptions? options = default);
static member Deserialize : ReadOnlySpan<char> * System.Text.Json.JsonSerializerOptions -> 'Value
Public Function Deserialize(Of TValue) (json As ReadOnlySpan(Of Char), Optional options As JsonSerializerOptions = Nothing) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- json
- ReadOnlySpan<Char>
要分析的 JSON 文本。
- options
- JsonSerializerOptions
用于在分析期间控制行为的选项。
返回
JSON 值的 TValue 表示形式。
例外
TValue 或其可序列化成员没有兼容的 JsonConverter。
注解
使用 UTF-16 范围不像使用 UTF-8 方法那样高效,因为实现本机使用 UTF-8。
适用于
Deserialize<TValue>(ReadOnlySpan<Byte>, JsonTypeInfo<TValue>)
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
将表示单个 JSON 值的 UTF-8 编码文本分析为 TValue。
public:
generic <typename TValue>
static TValue Deserialize(ReadOnlySpan<System::Byte> utf8Json, System::Text::Json::Serialization::Metadata::JsonTypeInfo<TValue> ^ jsonTypeInfo);
public static TValue? Deserialize<TValue>(ReadOnlySpan<byte> utf8Json, System.Text.Json.Serialization.Metadata.JsonTypeInfo<TValue> jsonTypeInfo);
static member Deserialize : ReadOnlySpan<byte> * System.Text.Json.Serialization.Metadata.JsonTypeInfo<'Value> -> 'Value
Public Function Deserialize(Of TValue) (utf8Json As ReadOnlySpan(Of Byte), jsonTypeInfo As JsonTypeInfo(Of TValue)) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- utf8Json
- ReadOnlySpan<Byte>
要分析的 JSON 文本。
- jsonTypeInfo
- JsonTypeInfo<TValue>
要转换的类型的元数据。
返回
JSON 值的 TValue 表示形式。
例外
JSON 无效,TValue 与 JSON 不兼容,或者 Stream 中有剩余数据。
TValue 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize<TValue>(ReadOnlySpan<Byte>, JsonSerializerOptions)
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
- Source:
- JsonSerializer.Read.Span.cs
将表示单个 JSON 值的 UTF-8 编码文本分析为泛型类型参数指定的类型的实例。
public static TValue? Deserialize<TValue>(ReadOnlySpan<byte> utf8Json, System.Text.Json.JsonSerializerOptions? options = default);
public static TValue Deserialize<TValue>(ReadOnlySpan<byte> utf8Json, System.Text.Json.JsonSerializerOptions options = default);
static member Deserialize : ReadOnlySpan<byte> * System.Text.Json.JsonSerializerOptions -> 'Value
Public Function Deserialize(Of TValue) (utf8Json As ReadOnlySpan(Of Byte), Optional options As JsonSerializerOptions = Nothing) As TValue
Public Shared Function Deserialize(Of TValue) (utf8Json As ReadOnlySpan(Of Byte), Optional options As JsonSerializerOptions = Nothing) As TValue
类型参数
- TValue
UTF-8 编码文本的目标类型。
参数
- utf8Json
- ReadOnlySpan<Byte>
要分析的 JSON 文本。
- options
- JsonSerializerOptions
用于在分析期间控制行为的选项。
返回
JSON 值的 TValue 表示形式。
例外
TValue 或其可序列化成员没有兼容的 JsonConverter。
注解
有关详细信息,请参阅 如何序列化和反序列化 JSON。
适用于
Deserialize<TValue>(Stream, JsonTypeInfo<TValue>)
将表示单个 JSON 值的 UTF-8 编码文本读入 TValue。
流将读取到完成。
public:
generic <typename TValue>
static TValue Deserialize(System::IO::Stream ^ utf8Json, System::Text::Json::Serialization::Metadata::JsonTypeInfo<TValue> ^ jsonTypeInfo);
public static TValue? Deserialize<TValue>(System.IO.Stream utf8Json, System.Text.Json.Serialization.Metadata.JsonTypeInfo<TValue> jsonTypeInfo);
static member Deserialize : System.IO.Stream * System.Text.Json.Serialization.Metadata.JsonTypeInfo<'Value> -> 'Value
Public Function Deserialize(Of TValue) (utf8Json As Stream, jsonTypeInfo As JsonTypeInfo(Of TValue)) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- utf8Json
- Stream
要分析的 JSON 数据。
- jsonTypeInfo
- JsonTypeInfo<TValue>
要转换的类型的元数据。
返回
JSON 值的 TValue 表示形式。
例外
utf8Json 或 jsonTypeInfonull。
JSON 无效,TValue 与 JSON 不兼容,或者 Stream 中有剩余数据。
TValue 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize<TValue>(Stream, JsonSerializerOptions)
将表示单个 JSON 值的 UTF-8 编码文本读入 TValue。
流将读取到完成。
public static TValue? Deserialize<TValue>(System.IO.Stream utf8Json, System.Text.Json.JsonSerializerOptions? options = default);
static member Deserialize : System.IO.Stream * System.Text.Json.JsonSerializerOptions -> 'Value
Public Function Deserialize(Of TValue) (utf8Json As Stream, Optional options As JsonSerializerOptions = Nothing) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- utf8Json
- Stream
要分析的 JSON 数据。
- options
- JsonSerializerOptions
用于控制读取过程中行为的选项。
返回
JSON 值的 TValue 表示形式。
例外
utf8Json
null。
JSON 无效,TValue 与 JSON 不兼容,或者 Stream 中有剩余数据。
TValue 或其可序列化成员没有兼容的 JsonConverter。
适用于
Deserialize<TValue>(String, JsonTypeInfo<TValue>)
将表示单个 JSON 值的文本分析为 TValue。
public:
generic <typename TValue>
static TValue Deserialize(System::String ^ json, System::Text::Json::Serialization::Metadata::JsonTypeInfo<TValue> ^ jsonTypeInfo);
public static TValue? Deserialize<TValue>(string json, System.Text.Json.Serialization.Metadata.JsonTypeInfo<TValue> jsonTypeInfo);
static member Deserialize : string * System.Text.Json.Serialization.Metadata.JsonTypeInfo<'Value> -> 'Value
Public Function Deserialize(Of TValue) (json As String, jsonTypeInfo As JsonTypeInfo(Of TValue)) As TValue
类型参数
- TValue
要反序列化 JSON 值的类型。
参数
- json
- String
要分析的 JSON 文本。
- jsonTypeInfo
- JsonTypeInfo<TValue>
要转换的类型的元数据。
返回
JSON 值的 TValue 表示形式。
例外
TValue 或其可序列化成员没有兼容的 JsonConverter。
注解
使用 String 不像使用 UTF-8 方法那么高效,因为实现本机使用 UTF-8。