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


JsonSerializer.DeserializeAsync Метод

Определение

Перегрузки

DeserializeAsync(Stream, JsonTypeInfo, CancellationToken)

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

DeserializeAsync(Stream, Type, JsonSerializerOptions, CancellationToken)

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

DeserializeAsync(Stream, Type, JsonSerializerContext, CancellationToken)

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

DeserializeAsync<TValue>(Stream, JsonTypeInfo<TValue>, CancellationToken)

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

DeserializeAsync<TValue>(Stream, JsonSerializerOptions, CancellationToken)

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

DeserializeAsync(Stream, JsonTypeInfo, CancellationToken)

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

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

public static System.Threading.Tasks.ValueTask<object?> DeserializeAsync (System.IO.Stream utf8Json, System.Text.Json.Serialization.Metadata.JsonTypeInfo jsonTypeInfo, System.Threading.CancellationToken cancellationToken = default);
static member DeserializeAsync : System.IO.Stream * System.Text.Json.Serialization.Metadata.JsonTypeInfo * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<obj>
Public Function DeserializeAsync (utf8Json As Stream, jsonTypeInfo As JsonTypeInfo, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Object)

Параметры

utf8Json
Stream

Данные JSON для анализа.

jsonTypeInfo
JsonTypeInfo

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

cancellationToken
CancellationToken

CancellationToken, которые можно использовать для отмены операции чтения.

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

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

Исключения

utf8Json или jsonTypeInfonull.

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

Маркер отмены был отменен. Это исключение хранится в возвращаемой задаче.

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

DeserializeAsync(Stream, Type, JsonSerializerOptions, CancellationToken)

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

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

public static System.Threading.Tasks.ValueTask<object?> DeserializeAsync (System.IO.Stream utf8Json, Type returnType, System.Text.Json.JsonSerializerOptions? options = default, System.Threading.CancellationToken cancellationToken = default);
public static System.Threading.Tasks.ValueTask<object> DeserializeAsync (System.IO.Stream utf8Json, Type returnType, System.Text.Json.JsonSerializerOptions options = default, System.Threading.CancellationToken cancellationToken = default);
static member DeserializeAsync : System.IO.Stream * Type * System.Text.Json.JsonSerializerOptions * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<obj>
Public Shared Function DeserializeAsync (utf8Json As Stream, returnType As Type, Optional options As JsonSerializerOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Object)
Public Function DeserializeAsync (utf8Json As Stream, returnType As Type, Optional options As JsonSerializerOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Object)

Параметры

utf8Json
Stream

Данные JSON для анализа.

returnType
Type

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

options
JsonSerializerOptions

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

cancellationToken
CancellationToken

Маркер отмены, который может использоваться для отмены операции чтения.

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

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

Исключения

utf8Json или returnTypenull.

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

-или-

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

-или-

В потоке остаются данные.

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

Маркер отмены был отменен. Это исключение хранится в возвращаемой задаче.

Комментарии

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

Этот метод сохраняет в задаче все исключения без использования, которые может вызывать синхронный аналог метода. Если исключение хранится в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Сведения о сохраненных исключениях см. в исключениях, создаваемых Deserialize(Stream, Type, JsonSerializerOptions).

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

DeserializeAsync(Stream, Type, JsonSerializerContext, CancellationToken)

Исходный код:
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.Threading.Tasks.ValueTask<object?> DeserializeAsync (System.IO.Stream utf8Json, Type returnType, System.Text.Json.Serialization.JsonSerializerContext context, System.Threading.CancellationToken cancellationToken = default);
static member DeserializeAsync : System.IO.Stream * Type * System.Text.Json.Serialization.JsonSerializerContext * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<obj>
Public Function DeserializeAsync (utf8Json As Stream, returnType As Type, context As JsonSerializerContext, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Object)

Параметры

utf8Json
Stream

Данные JSON для анализа.

returnType
Type

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

context
JsonSerializerContext

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

cancellationToken
CancellationToken

CancellationToken, которые можно использовать для отмены операции чтения.

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

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

Исключения

utf8Json, returnTypeили contextnull.

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

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

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

Маркер отмены был отменен. Это исключение хранится в возвращаемой задаче.

Комментарии

Этот метод сохраняет в задаче все исключения без использования, которые может вызывать синхронный аналог метода. Если исключение хранится в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Сведения о сохраненных исключениях см. в исключениях, создаваемых Deserialize(Stream, Type, JsonSerializerContext).

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

DeserializeAsync<TValue>(Stream, JsonTypeInfo<TValue>, CancellationToken)

Исходный код:
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 System.Threading.Tasks.ValueTask<TValue?> DeserializeAsync<TValue> (System.IO.Stream utf8Json, System.Text.Json.Serialization.Metadata.JsonTypeInfo<TValue> jsonTypeInfo, System.Threading.CancellationToken cancellationToken = default);
static member DeserializeAsync : System.IO.Stream * System.Text.Json.Serialization.Metadata.JsonTypeInfo<'Value> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'Value>
Public Function DeserializeAsync(Of TValue) (utf8Json As Stream, jsonTypeInfo As JsonTypeInfo(Of TValue), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of TValue)

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

TValue

Тип для десериализации значения JSON.

Параметры

utf8Json
Stream

Данные JSON для анализа.

jsonTypeInfo
JsonTypeInfo<TValue>

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

cancellationToken
CancellationToken

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

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

ValueTask<TValue>

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

Исключения

utf8Json или jsonTypeInfonull.

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

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

Маркер отмены был отменен. Это исключение хранится в возвращаемой задаче.

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

DeserializeAsync<TValue>(Stream, JsonSerializerOptions, CancellationToken)

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

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

public static System.Threading.Tasks.ValueTask<TValue?> DeserializeAsync<TValue> (System.IO.Stream utf8Json, System.Text.Json.JsonSerializerOptions? options = default, System.Threading.CancellationToken cancellationToken = default);
public static System.Threading.Tasks.ValueTask<TValue> DeserializeAsync<TValue> (System.IO.Stream utf8Json, System.Text.Json.JsonSerializerOptions options = default, System.Threading.CancellationToken cancellationToken = default);
static member DeserializeAsync : System.IO.Stream * System.Text.Json.JsonSerializerOptions * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'Value>
Public Shared Function DeserializeAsync(Of TValue) (utf8Json As Stream, Optional options As JsonSerializerOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of TValue)
Public Function DeserializeAsync(Of TValue) (utf8Json As Stream, Optional options As JsonSerializerOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of TValue)

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

TValue

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

Параметры

utf8Json
Stream

Данные JSON для анализа.

options
JsonSerializerOptions

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

cancellationToken
CancellationToken

Маркер, который может использоваться для отмены операции чтения.

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

ValueTask<TValue>

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

Исключения

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

-или-

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

-или-

В потоке остаются данные.

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

utf8Json null.

Маркер отмены был отменен. Это исключение хранится в возвращаемой задаче.

Комментарии

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

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