Поделиться через


JsonSerializer.Deserialize Метод

Определение

Перегрузки

Deserialize(Stream, JsonTypeInfo)

Считывает закодированный текст UTF-8, представляющий одно значение JSON в экземпляр, указанный jsonTypeInfo. Поток будет считываться до завершения.

Deserialize(Utf8JsonReader, Type, JsonSerializerContext)

Считывает одно значение JSON (включая объекты или массивы) из предоставленного средства чтения в returnType.

Deserialize(JsonNode, Type, JsonSerializerContext)

Преобразует JsonNode, представляющую одно значение JSON в returnType.

Deserialize(JsonNode, Type, JsonSerializerOptions)

Преобразует JsonNode, представляющую одно значение JSON в returnType.

Deserialize(JsonElement, Type, JsonSerializerContext)

Преобразует JsonElement, представляющую одно значение JSON в returnType.

Deserialize(JsonElement, Type, JsonSerializerOptions)

Преобразует JsonElement, представляющую одно значение JSON в returnType.

Deserialize(JsonDocument, Type, JsonSerializerContext)

Преобразует JsonDocument, представляющую одно значение JSON в returnType.

Deserialize(JsonDocument, Type, JsonSerializerOptions)

Преобразует JsonDocument, представляющую одно значение JSON в returnType.

Deserialize(String, Type, JsonSerializerContext)

Анализирует текст, представляющий одно значение JSON в returnType.

Deserialize(String, Type, JsonSerializerOptions)

Анализирует текст, представляющий одно значение JSON в экземпляр заданного типа.

Deserialize(ReadOnlySpan<Char>, Type, JsonSerializerContext)

Анализирует текст, представляющий одно значение JSON в returnType.

Deserialize(ReadOnlySpan<Char>, Type, JsonSerializerOptions)

Анализирует текст, представляющий одно значение JSON в экземпляр заданного типа.

Deserialize(Utf8JsonReader, Type, JsonSerializerOptions)

Считывает одно значение JSON (включая объекты или массивы) из предоставленного средства чтения и преобразует его в экземпляр указанного типа.

Deserialize(ReadOnlySpan<Byte>, Type, JsonSerializerOptions)

Анализирует закодированный текст UTF-8, представляющий одно значение JSON в экземпляр заданного типа.

Deserialize(Stream, Type, JsonSerializerContext)

Считывает закодированный текст UTF-8, представляющий одно значение JSON в returnType. Поток будет считываться до завершения.

Deserialize(Stream, Type, JsonSerializerOptions)

Считывает закодированный текст UTF-8, представляющий одно значение JSON в returnType. Поток будет считываться до завершения.

Deserialize(Utf8JsonReader, JsonTypeInfo)

Считывает одно значение JSON (включая объекты или массивы) из предоставленного средства чтения в экземпляр, указанный jsonTypeInfo.

Deserialize(JsonNode, JsonTypeInfo)

Преобразует JsonNode, представляющую одно значение JSON в экземпляр, указанный jsonTypeInfo.

Deserialize(JsonElement, JsonTypeInfo)

Преобразует JsonElement, представляющую одно значение JSON в экземпляр, указанный jsonTypeInfo.

Deserialize(JsonDocument, JsonTypeInfo)

Преобразует JsonDocument, представляющую одно значение JSON в экземпляр, указанный jsonTypeInfo.

Deserialize(String, JsonTypeInfo)

Анализирует текст, представляющий одно значение JSON в экземпляр, указанный jsonTypeInfo.

Deserialize(ReadOnlySpan<Char>, JsonTypeInfo)

Анализирует текст, представляющий одно значение JSON в экземпляр, указанный jsonTypeInfo.

Deserialize(ReadOnlySpan<Byte>, Type, JsonSerializerContext)

Анализирует закодированный текст UTF-8, представляющий одно значение JSON в returnType.

Deserialize(ReadOnlySpan<Byte>, JsonTypeInfo)

Анализирует закодированный текст UTF-8, представляющий одно значение JSON в экземпляр, указанный jsonTypeInfo.

Deserialize<TValue>(JsonElement, JsonSerializerOptions)

Преобразует JsonElement, представляющую одно значение JSON в TValue.

Deserialize<TValue>(JsonElement, JsonTypeInfo<TValue>)

Преобразует JsonElement, представляющую одно значение JSON в TValue.

Deserialize<TValue>(Utf8JsonReader, JsonTypeInfo<TValue>)

Считывает одно значение JSON (включая объекты или массивы) из предоставленного средства чтения в TValue.

Deserialize<TValue>(JsonNode, JsonTypeInfo<TValue>)

Преобразует JsonNode, представляющую одно значение JSON в TValue.

Deserialize<TValue>(Utf8JsonReader, JsonSerializerOptions)

Считывает одно значение JSON (включая объекты или массивы) из предоставленного средства чтения в экземпляр типа, указанного параметром универсального типа.

Deserialize<TValue>(JsonDocument, JsonTypeInfo<TValue>)

Преобразует JsonDocument, представляющую одно значение JSON в TValue.

Deserialize<TValue>(JsonNode, JsonSerializerOptions)

Преобразует JsonNode, представляющую одно значение JSON в TValue.

Deserialize<TValue>(JsonDocument, JsonSerializerOptions)

Преобразует JsonDocument, представляющую одно значение JSON в TValue.

Deserialize<TValue>(ReadOnlySpan<Char>, JsonTypeInfo<TValue>)

Анализирует текст, представляющий одно значение JSON в TValue.

Deserialize<TValue>(String, JsonSerializerOptions)

Анализирует текст, представляющий одно значение JSON в экземпляр типа, заданного параметром универсального типа.

Deserialize<TValue>(ReadOnlySpan<Char>, JsonSerializerOptions)

Анализирует текст, представляющий одно значение JSON в экземпляр типа, заданного параметром универсального типа.

Deserialize<TValue>(ReadOnlySpan<Byte>, JsonTypeInfo<TValue>)

Анализирует закодированный текст UTF-8, представляющий одно значение JSON в TValue.

Deserialize<TValue>(ReadOnlySpan<Byte>, JsonSerializerOptions)

Анализирует кодированный текст UTF-8, представляющий одно значение JSON в экземпляр типа, заданного параметром универсального типа.

Deserialize<TValue>(Stream, JsonTypeInfo<TValue>)

Считывает закодированный текст UTF-8, представляющий одно значение JSON в TValue. Поток будет считываться до завершения.

Deserialize<TValue>(Stream, JsonSerializerOptions)

Считывает закодированный текст UTF-8, представляющий одно значение JSON в TValue. Поток будет считываться до завершения.

Deserialize<TValue>(String, JsonTypeInfo<TValue>)

Анализирует текст, представляющий одно значение JSON в TValue.

Deserialize(Stream, JsonTypeInfo)

Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs

Считывает закодированный текст UTF-8, представляющий одно значение JSON в экземпляр, указанный 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

Метаданные о преобразуемом типе.

Возвращаемое значение

jsonTypeInfo представление значения JSON.

Исключения

utf8Json или jsonTypeInfonull.

Json недопустим или оставшиеся данные в потоке.

Применяется к

Deserialize(Utf8JsonReader, Type, JsonSerializerContext)

Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs

Считывает одно значение 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

Поставщик метаданных для сериализуемых типов.

Возвращаемое значение

returnType представление значения JSON.

Исключения

returnType или contextnull.

Json недопустим, returnType несовместим с JSON, или значение не удалось прочитать из средства чтения.

reader использует неподдерживаемые параметры.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Метод GetTypeInfo(Type) в предоставленном context не вернул совместимый JsonTypeInfo для returnType.

Комментарии

Если свойство TokenTypereaderPropertyName или None, средство чтения будет расширено одним вызовом Read(), чтобы определить начало значения.

После завершения этого метода reader размещается в окончательном маркере в значении JSON. Если возникает исключение, средство чтения сбрасывается в состояние, в которое он находился при вызове метода.

Этот метод делает копию данных, с помощью чего средство чтения действовало, поэтому не требуется вызывающий объект для поддержания целостности данных за пределами возврата этого метода.

JsonReaderOptions, используемый для создания экземпляра Utf8JsonReader, имеет приоритет над JsonSerializerOptions при конфликте. Поэтому при чтении используются AllowTrailingCommas, MaxDepthи CommentHandling.

Применяется к

Deserialize(JsonNode, Type, JsonSerializerContext)

Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs

Преобразует JsonNode, представляющую одно значение JSON в 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

Параметры

node
JsonNode

Преобразуемый JsonNode.

returnType
Type

Тип объекта для преобразования и возврата.

context
JsonSerializerContext

Поставщик метаданных для сериализуемых типов.

Возвращаемое значение

returnType представление значения JSON.

Исключения

returnType null.

-или-

context null.

Недопустимый код JSON.

-или-

returnType несовместим с JSON.

-или-

Оставшиеся данные находятся в строке за пределами одного значения JSON.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Метод GetTypeInfo(Type) предоставленного context возвращает null для преобразования типа.

Применяется к

Deserialize(JsonNode, Type, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs

Преобразует JsonNode, представляющую одно значение JSON в 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

Параметры

node
JsonNode

Преобразуемый JsonNode.

returnType
Type

Тип объекта для преобразования и возврата.

options
JsonSerializerOptions

Параметры управления поведением во время синтаксического анализа.

Возвращаемое значение

returnType представление значения JSON.

Исключения

returnType несовместим с JSON.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Применяется к

Deserialize(JsonElement, Type, JsonSerializerContext)

Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs

Преобразует JsonElement, представляющую одно значение JSON в 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

Поставщик метаданных для сериализуемых типов.

Возвращаемое значение

returnType представление значения JSON.

Исключения

returnType null.

-или-

context null.

Недопустимый код JSON.

-или-

returnType несовместим с JSON.

-или-

Оставшиеся данные находятся в строке за пределами одного значения JSON.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Метод GetTypeInfo(Type) предоставленного context возвращает null для преобразования типа.

Применяется к

Deserialize(JsonElement, Type, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs

Преобразует JsonElement, представляющую одно значение JSON в 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

Параметры управления поведением во время синтаксического анализа.

Возвращаемое значение

returnType представление значения JSON.

Исключения

returnType null.

returnType несовместим с JSON.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Применяется к

Deserialize(JsonDocument, Type, JsonSerializerContext)

Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs

Преобразует JsonDocument, представляющую одно значение JSON в 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

Поставщик метаданных для сериализуемых типов.

Возвращаемое значение

returnType представление значения JSON.

Исключения

document null.

-или-

returnType null.

-или-

context null.

Недопустимый код JSON.

-или-

returnType несовместим с JSON.

-или-

Оставшиеся данные находятся в строке за пределами одного значения JSON.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Метод GetTypeInfo(Type) предоставленного context возвращает null для преобразования типа.

Применяется к

Deserialize(JsonDocument, Type, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs

Преобразует JsonDocument, представляющую одно значение JSON в 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

Параметры управления поведением во время синтаксического анализа.

Возвращаемое значение

returnType представление значения JSON.

Исключения

document или returnTypenull.

returnType несовместим с JSON.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Применяется к

Deserialize(String, Type, JsonSerializerContext)

Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs

Анализирует текст, представляющий одно значение 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

Поставщик метаданных для сериализуемых типов.

Возвращаемое значение

returnType представление значения JSON.

Исключения

json или returnTypenull.

-или-

context null.

Недопустимый код JSON.

-или-

returnType несовместим с JSON.

-или-

Оставшиеся данные находятся в строке за пределами одного значения JSON.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Метод GetTypeInfo(Type) предоставленного context возвращает null для преобразования типа.

Комментарии

Использование String не так эффективно, как использование методов UTF-8, так как реализация изначально использует UTF-8.

Применяется к

Deserialize(String, Type, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs

Анализирует текст, представляющий одно значение 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 Shared Function Deserialize (json As String, returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
Public Function Deserialize (json As String, returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object

Параметры

json
String

Текст JSON для анализа.

returnType
Type

Тип объекта для преобразования и возврата.

options
JsonSerializerOptions

Параметры управления поведением во время синтаксического анализа.

Возвращаемое значение

returnType представление значения JSON.

Исключения

json или returnTypenull.

Недопустимый код JSON.

-или-

TValue несовместим с JSON.

-или-

Оставшиеся данные находятся в строке за пределами одного значения JSON.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Комментарии

Использование String не так эффективно, как использование методов UTF-8, так как реализация изначально использует UTF-8.

Дополнительные сведения см. в разделе Сериализация и десериализация JSON.

Применяется к

Deserialize(ReadOnlySpan<Char>, Type, JsonSerializerContext)

Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs

Анализирует текст, представляющий одно значение 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

Поставщик метаданных для сериализуемых типов.

Возвращаемое значение

returnType представление значения JSON.

Исключения

json или returnTypenull.

-или-

context null.

Недопустимый код JSON.

-или-

returnType несовместим с JSON.

-или-

Оставшиеся данные находятся в строке за пределами одного значения JSON.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Метод GetTypeInfo(Type) предоставленного context возвращает null для преобразования типа.

Комментарии

Использование String не так эффективно, как использование методов UTF-8, так как реализация изначально использует UTF-8.

Применяется к

Deserialize(ReadOnlySpan<Char>, Type, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs

Анализирует текст, представляющий одно значение 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

Параметры управления поведением во время синтаксического анализа.

Возвращаемое значение

returnType представление значения JSON.

Исключения

returnType null.

Недопустимый код JSON.

-или-

returnType несовместим с JSON.

-или-

Оставшиеся данные находятся в диапазоне за пределами одного значения JSON.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Комментарии

Использование диапазона UTF-16 не так эффективно, как использование методов UTF-8, так как реализация изначально использует UTF-8.

Применяется к

Deserialize(Utf8JsonReader, Type, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs

Считывает одно значение 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 Shared Function Deserialize (ByRef reader As Utf8JsonReader, returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
Public Function Deserialize (ByRef reader As Utf8JsonReader, returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object

Параметры

reader
Utf8JsonReader

Средство чтения для чтения JSON из.

returnType
Type

Тип объекта для преобразования и возврата.

options
JsonSerializerOptions

Параметры управления поведением сериализатора во время чтения.

Возвращаемое значение

returnType представление значения JSON.

Исключения

returnType null.

Недопустимый код JSON.

-или-

returnType несовместим с JSON.

-или-

Значение не удалось прочитать из средства чтения.

reader использует неподдерживаемые параметры.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Комментарии

Если свойство TokenTypereaderJsonTokenType.PropertyName или JsonTokenType.None, средство чтения будет расширено одним вызовом Utf8JsonReader.Read(), чтобы определить начало значения.

После завершения этого метода reader будет размещаться в окончательном маркере в значении JSON. Если возникает исключение, средство чтения сбрасывается в состояние, в которое он находился при вызове метода.

Этот метод делает копию данных, с помощью чего средство чтения действовало, поэтому не требуется вызывающий объект для поддержания целостности данных за пределами возврата этого метода.

JsonReaderOptions, используемый для создания экземпляра Utf8JsonReader, имеет приоритет над JsonSerializerOptions при конфликте. Поэтому при чтении используются JsonReaderOptions.AllowTrailingCommas, JsonReaderOptions.MaxDepthи JsonReaderOptions.CommentHandling.

Дополнительные сведения см. в разделе Сериализация и десериализация JSON.

Применяется к

Deserialize(ReadOnlySpan<Byte>, Type, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs

Анализирует закодированный текст UTF-8, представляющий одно значение JSON в экземпляр заданного типа.

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 Shared Function Deserialize (utf8Json As ReadOnlySpan(Of Byte), returnType As Type, Optional options As JsonSerializerOptions = Nothing) As Object
Public 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

Параметры управления поведением во время синтаксического анализа.

Возвращаемое значение

returnType представление значения JSON.

Исключения

returnType null.

Недопустимый код JSON.

-или-

returnType несовместим с JSON.

-или-

Оставшиеся данные находятся в диапазоне за пределами одного значения JSON.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Комментарии

Дополнительные сведения см. в разделе Сериализация и десериализация JSON.

Применяется к

Deserialize(Stream, Type, JsonSerializerContext)

Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs

Считывает закодированный текст UTF-8, представляющий одно значение JSON в 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

Поставщик метаданных для сериализуемых типов.

Возвращаемое значение

returnType представление значения JSON.

Исключения

utf8Json, returnTypeили contextnull.

Недопустимый код JSON, returnType несовместим с JSON или оставшиеся данные в потоке.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Метод GetTypeInfo(Type) в предоставленном context не вернул совместимый JsonTypeInfo для returnType.

Применяется к

Deserialize(Stream, Type, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs

Считывает закодированный текст UTF-8, представляющий одно значение JSON в 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

Параметры управления поведением во время чтения.

Возвращаемое значение

returnType представление значения JSON.

Исключения

utf8Json или returnTypenull.

Недопустимый код JSON, returnType несовместим с JSON или оставшиеся данные в потоке.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Применяется к

Deserialize(Utf8JsonReader, JsonTypeInfo)

Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs

Считывает одно значение 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

Метаданные о преобразуемом типе.

Возвращаемое значение

jsonTypeInfo представление значения JSON.

Исключения

Json недопустим, jsonTypeInfo несовместим с JSON, или значение не удалось прочитать из средства чтения.

reader использует неподдерживаемые параметры.

Комментарии

Если свойство TokenTypereaderPropertyName или None, средство чтения будет расширено одним вызовом Read(), чтобы определить начало значения.

После завершения этого метода reader будет размещаться в окончательном маркере в значении JSON. Если возникает исключение, средство чтения сбрасывается в состояние, в которое он находился при вызове метода.

Этот метод делает копию данных, с помощью чего средство чтения действовало, поэтому не требуется вызывающий объект для поддержания целостности данных за пределами возврата этого метода.

JsonReaderOptions, используемый для создания экземпляра Utf8JsonReader, имеет приоритет над JsonSerializerOptions при конфликте. Поэтому при чтении используются AllowTrailingCommas, MaxDepthи CommentHandling.

Применяется к

Deserialize(JsonNode, JsonTypeInfo)

Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs

Преобразует JsonNode, представляющую одно значение JSON в экземпляр, указанный 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

Параметры

node
JsonNode

Преобразуемый JsonNode.

jsonTypeInfo
JsonTypeInfo

Метаданные о преобразуемом типе.

Возвращаемое значение

jsonTypeInfo представление значения JSON.

Исключения

jsonTypeInfo null.

Применяется к

Deserialize(JsonElement, JsonTypeInfo)

Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs

Преобразует JsonElement, представляющую одно значение JSON в экземпляр, указанный 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

Метаданные о преобразуемом типе.

Возвращаемое значение

jsonTypeInfo представление значения JSON.

Исключения

jsonTypeInfo null.

Применяется к

Deserialize(JsonDocument, JsonTypeInfo)

Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs

Преобразует JsonDocument, представляющую одно значение JSON в экземпляр, указанный 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

Метаданные о преобразуемом типе.

Возвращаемое значение

jsonTypeInfo представление значения JSON.

Исключения

document null.

-или-

jsonTypeInfo null.

Применяется к

Deserialize(String, JsonTypeInfo)

Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs

Анализирует текст, представляющий одно значение 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

Метаданные о преобразуемом типе.

Возвращаемое значение

jsonTypeInfo представление значения JSON.

Исключения

json null.

-или-

jsonTypeInfo null.

Недопустимый код JSON.

-или-

Оставшиеся данные находятся в строке за пределами одного значения JSON.

Комментарии

Использование String не так эффективно, как использование методов UTF-8, так как реализация изначально использует UTF-8.

Применяется к

Deserialize(ReadOnlySpan<Char>, JsonTypeInfo)

Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs

Анализирует текст, представляющий одно значение 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

Метаданные о преобразуемом типе.

Возвращаемое значение

jsonTypeInfo представление значения JSON.

Исключения

jsonTypeInfo null.

Недопустимый код JSON.

-или-

Оставшиеся данные находятся в строке за пределами одного значения JSON.

Комментарии

Использование String не так эффективно, как использование методов UTF-8, так как реализация изначально использует UTF-8.

Применяется к

Deserialize(ReadOnlySpan<Byte>, Type, JsonSerializerContext)

Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs

Анализирует закодированный текст UTF-8, представляющий одно значение JSON в 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

Поставщик метаданных для сериализуемых типов.

Возвращаемое значение

returnType представление значения JSON.

Исключения

returnType null.

Недопустимый код JSON, returnType несовместим с JSON или оставшиеся данные в потоке.

Несовместимые JsonConverter для returnType или его сериализуемых элементов.

Метод GetTypeInfo(Type) в предоставленном context не вернул совместимый JsonTypeInfo для returnType.

Применяется к

Deserialize(ReadOnlySpan<Byte>, JsonTypeInfo)

Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs

Анализирует закодированный текст UTF-8, представляющий одно значение JSON в экземпляр, указанный 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

Метаданные о преобразуемом типе.

Возвращаемое значение

jsonTypeInfo представление значения JSON.

Исключения

Json недопустим или оставшиеся данные в буфере.

Применяется к

Deserialize<TValue>(JsonElement, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs

Преобразует JsonElement, представляющую одно значение JSON в 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

Параметры управления поведением во время синтаксического анализа.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

TValue несовместим с JSON.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Применяется к

Deserialize<TValue>(JsonElement, JsonTypeInfo<TValue>)

Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs
Исходный код:
JsonSerializer.Read.Element.cs

Преобразует JsonElement, представляющую одно значение JSON в 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>

Метаданные о преобразуемом типе.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

jsonTypeInfo null.

TValue несовместим с JSON.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Применяется к

Deserialize<TValue>(Utf8JsonReader, JsonTypeInfo<TValue>)

Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs

Считывает одно значение 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>

Метаданные о преобразуемом типе.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

Json недопустим, TValue несовместим с JSON, или значение не удалось прочитать из средства чтения.

reader использует неподдерживаемые параметры.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Комментарии

Если свойство TokenTypereaderPropertyName или None, средство чтения будет расширено одним вызовом Read(), чтобы определить начало значения.

После завершения этого метода reader размещается в окончательном маркере в значении JSON. Если возникает исключение, средство чтения сбрасывается в состояние, в которое он находился при вызове метода.

Этот метод делает копию данных, с помощью чего средство чтения действовало, поэтому не требуется вызывающий объект для поддержания целостности данных за пределами возврата этого метода.

JsonReaderOptions, используемый для создания экземпляра Utf8JsonReader, имеет приоритет над JsonSerializerOptions при конфликте. Поэтому при чтении используются AllowTrailingCommas, MaxDepthи CommentHandling.

Применяется к

Deserialize<TValue>(JsonNode, JsonTypeInfo<TValue>)

Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs

Преобразует JsonNode, представляющую одно значение JSON в 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.

Параметры

node
JsonNode

Преобразуемый JsonNode.

jsonTypeInfo
JsonTypeInfo<TValue>

Метаданные о преобразуемом типе.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

jsonTypeInfo null.

TValue несовместим с JSON.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Применяется к

Deserialize<TValue>(Utf8JsonReader, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs
Исходный код:
JsonSerializer.Read.Utf8JsonReader.cs

Считывает одно значение 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 Shared Function Deserialize(Of TValue) (ByRef reader As Utf8JsonReader, Optional options As JsonSerializerOptions = Nothing) As TValue
Public Function Deserialize(Of TValue) (ByRef reader As Utf8JsonReader, Optional options As JsonSerializerOptions = Nothing) As TValue

Параметры типа

TValue

Целевой тип значения JSON.

Параметры

reader
Utf8JsonReader

Средство чтения для чтения JSON из.

options
JsonSerializerOptions

Параметры управления поведением сериализатора во время чтения.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

Недопустимый код JSON.

-или-

TValue несовместим с JSON.

-или-

Значение не удалось прочитать из средства чтения.

reader использует неподдерживаемые параметры.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Комментарии

Если свойство TokenTypereaderJsonTokenType.PropertyName или JsonTokenType.None, средство чтения будет расширено одним вызовом Utf8JsonReader.Read(), чтобы определить начало значения.

После завершения этого метода reader будет размещаться в окончательном маркере в значении JSON. Если возникает исключение, средство чтения сбрасывается в состояние, в которое он находился при вызове метода.

Этот метод делает копию данных, с помощью чего средство чтения действовало, поэтому не требуется вызывающий объект для поддержания целостности данных за пределами возврата этого метода.

JsonReaderOptions, используемый для создания экземпляра Utf8JsonReader, имеет приоритет над JsonSerializerOptions при конфликте. Поэтому при чтении используются JsonReaderOptions.AllowTrailingCommas, JsonReaderOptions.MaxDepthи JsonReaderOptions.CommentHandling.

Дополнительные сведения см. в разделе Сериализация и десериализация JSON.

Применяется к

Deserialize<TValue>(JsonDocument, JsonTypeInfo<TValue>)

Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs

Преобразует JsonDocument, представляющую одно значение JSON в 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>

Метаданные о преобразуемом типе.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

document null.

-или-

jsonTypeInfo null.

TValue несовместим с JSON.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Применяется к

Deserialize<TValue>(JsonNode, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs
Исходный код:
JsonSerializer.Read.Node.cs

Преобразует JsonNode, представляющую одно значение JSON в 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.

Параметры

node
JsonNode

Преобразуемый JsonNode.

options
JsonSerializerOptions

Параметры управления поведением во время синтаксического анализа.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

TValue несовместим с JSON.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Применяется к

Deserialize<TValue>(JsonDocument, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs
Исходный код:
JsonSerializer.Read.Document.cs

Преобразует JsonDocument, представляющую одно значение JSON в 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

Параметры управления поведением во время синтаксического анализа.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

document null.

TValue несовместим с JSON.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Применяется к

Deserialize<TValue>(ReadOnlySpan<Char>, JsonTypeInfo<TValue>)

Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs

Анализирует текст, представляющий одно значение 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>

Метаданные о преобразуемом типе.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

json null.

-или-

jsonTypeInfo null.

Недопустимый код JSON.

-или-

TValue несовместим с JSON.

-или-

Оставшиеся данные находятся в строке за пределами одного значения JSON.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Комментарии

Использование String не так эффективно, как использование методов UTF-8, так как реализация изначально использует UTF-8.

Применяется к

Deserialize<TValue>(String, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs

Анализирует текст, представляющий одно значение 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 Shared Function Deserialize(Of TValue) (json As String, Optional options As JsonSerializerOptions = Nothing) As TValue
Public Function Deserialize(Of TValue) (json As String, Optional options As JsonSerializerOptions = Nothing) As TValue

Параметры типа

TValue

Целевой тип значения JSON.

Параметры

json
String

Текст JSON для анализа.

options
JsonSerializerOptions

Параметры управления поведением во время синтаксического анализа.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

Недопустимый код JSON.

-или-

TValue несовместим с JSON.

-или-

Оставшиеся данные находятся в строке за пределами одного значения JSON.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Комментарии

Использование String не так эффективно, как использование методов UTF-8, так как реализация изначально использует UTF-8.

Дополнительные сведения см. в разделе Сериализация и десериализация JSON.

Применяется к

Deserialize<TValue>(ReadOnlySpan<Char>, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs

Анализирует текст, представляющий одно значение 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

Параметры управления поведением во время синтаксического анализа.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

Недопустимый код JSON.

-или-

TValue несовместим с JSON.

-или-

Оставшиеся данные находятся в диапазоне за пределами одного значения JSON.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Комментарии

Использование диапазона UTF-16 не так эффективно, как использование методов UTF-8, так как реализация изначально использует UTF-8.

Применяется к

Deserialize<TValue>(ReadOnlySpan<Byte>, JsonTypeInfo<TValue>)

Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs

Анализирует закодированный текст UTF-8, представляющий одно значение JSON в 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>

Метаданные о преобразуемом типе.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

Недопустимый код JSON, TValue несовместим с JSON или оставшиеся данные в потоке.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Применяется к

Deserialize<TValue>(ReadOnlySpan<Byte>, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs
Исходный код:
JsonSerializer.Read.Span.cs

Анализирует кодированный текст UTF-8, представляющий одно значение JSON в экземпляр типа, заданного параметром универсального типа.

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 Shared Function Deserialize(Of TValue) (utf8Json As ReadOnlySpan(Of Byte), Optional options As JsonSerializerOptions = Nothing) As TValue
Public 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

Параметры управления поведением во время синтаксического анализа.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

Недопустимый код JSON.

-или-

TValue несовместим с JSON.

-или-

Оставшиеся данные находятся в диапазоне за пределами одного значения JSON.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Комментарии

Дополнительные сведения см. в разделе Сериализация и десериализация JSON.

Применяется к

Deserialize<TValue>(Stream, JsonTypeInfo<TValue>)

Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs

Считывает закодированный текст UTF-8, представляющий одно значение JSON в 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>

Метаданные о преобразуемом типе.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

utf8Json или jsonTypeInfonull.

Недопустимый код JSON, TValue несовместим с JSON или оставшиеся данные в потоке.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Применяется к

Deserialize<TValue>(Stream, JsonSerializerOptions)

Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs
Исходный код:
JsonSerializer.Read.Stream.cs

Считывает закодированный текст UTF-8, представляющий одно значение JSON в 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

Параметры управления поведением во время чтения.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

utf8Json null.

Недопустимый код JSON, TValue несовместим с JSON или оставшиеся данные в потоке.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Применяется к

Deserialize<TValue>(String, JsonTypeInfo<TValue>)

Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs
Исходный код:
JsonSerializer.Read.String.cs

Анализирует текст, представляющий одно значение 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>

Метаданные о преобразуемом типе.

Возвращаемое значение

TValue

TValue представление значения JSON.

Исключения

json null.

-или-

jsonTypeInfo null.

Недопустимый код JSON.

-или-

TValue несовместим с JSON.

-или-

Оставшиеся данные находятся в строке за пределами одного значения JSON.

Несовместимые JsonConverter для TValue или его сериализуемых элементов.

Комментарии

Использование String не так эффективно, как использование методов UTF-8, так как реализация изначально использует UTF-8.

Применяется к