JsonSerializer.Deserialize Metoda

Definicja

Przeciążenia

Deserialize(ReadOnlySpan<Byte>, Type, JsonSerializerOptions)

Analizuje zakodowany tekst UTF-8 reprezentujący pojedynczą wartość JSON w wystąpieniu określonego typu.Parses the UTF-8 encoded text representing a single JSON value into an instance of a specified type.

Deserialize(String, Type, JsonSerializerOptions)

Analizuje tekst reprezentujący pojedynczą wartość JSON w wystąpieniu określonego typu.Parses the text representing a single JSON value into an instance of a specified type.

Deserialize(Utf8JsonReader, Type, JsonSerializerOptions)

Odczytuje jedną wartość JSON (łącznie z obiektami lub tablicami) z podanego czytnika i konwertuje ją na wystąpienie określonego typu.Reads one JSON value (including objects or arrays) from the provided reader and converts it into an instance of a specified type.

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

Analizuje zakodowany tekst UTF-8 reprezentujący pojedynczą wartość JSON w wystąpieniu typu określonego przez parametr typu ogólnego.Parses the UTF-8 encoded text representing a single JSON value into an instance of the type specified by a generic type parameter.

Deserialize<TValue>(String, JsonSerializerOptions)

Analizuje tekst reprezentujący pojedynczą wartość JSON w wystąpieniu typu określonego przez parametr typu ogólnego.Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter.

Deserialize<TValue>(Utf8JsonReader, JsonSerializerOptions)

Odczytuje jedną wartość JSON (łącznie z obiektami lub tablicami) z podanego czytnika do wystąpienia typu określonego przez parametr typu ogólnego.Reads one JSON value (including objects or arrays) from the provided reader into an instance of the type specified by a generic type parameter.

Deserialize(ReadOnlySpan<Byte>, Type, JsonSerializerOptions)

Analizuje zakodowany tekst UTF-8 reprezentujący pojedynczą wartość JSON w wystąpieniu określonego typu.Parses the UTF-8 encoded text representing a single JSON value into an instance of a specified type.

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 = null) As Object

Parametry

utf8Json
ReadOnlySpan<Byte>

Tekst JSON do przeanalizowania.The JSON text to parse.

returnType
Type

Typ obiektu do przekonwertowania i zwrócenia.The type of the object to convert to and return.

options
JsonSerializerOptions

Opcje sterujące zachowaniem podczas analizy.Options to control the behavior during parsing.

Zwraca

returnType reprezentacja wartości JSON.A returnType representation of the JSON value.

Wyjątki

returnType jest null.returnType is null.

KOD JSON jest nieprawidłowy.The JSON is invalid.

lub-or-

returnType nie jest zgodna z formatem JSON.returnType is not compatible with the JSON.

lub-or-

Pozostałe dane w zakresie wykraczają poza pojedynczą wartość JSON.There is remaining data in the span beyond a single JSON value.

Uwagi

Aby uzyskać więcej informacji, zobacz jak serializować i deserializować JSON.For more information, see How to serialize and deserialize JSON.

Deserialize(String, Type, JsonSerializerOptions)

Analizuje tekst reprezentujący pojedynczą wartość JSON w wystąpieniu określonego typu.Parses the text representing a single JSON value into an instance of a specified type.

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 = null) As Object

Parametry

json
String

Tekst JSON do przeanalizowania.The JSON text to parse.

returnType
Type

Typ obiektu do przekonwertowania i zwrócenia.The type of the object to convert to and return.

options
JsonSerializerOptions

Opcje sterujące zachowaniem podczas analizy.Options to control the behavior during parsing.

Zwraca

returnType reprezentacja wartości JSON.A returnType representation of the JSON value.

Wyjątki

Parametr json lub returnType ma wartość null.json or returnType is null.

KOD JSON jest nieprawidłowy.The JSON is invalid.

lub-or-

TValue nie jest zgodna z formatem JSON.TValue is not compatible with the JSON.

lub-or-

W ciągu powyżej pojedynczej wartości JSON znajdują się pozostałe dane.There is remaining data in the string beyond a single JSON value.

Uwagi

Używanie String nie jest tak wydajne jak korzystanie z metod UTF-8, ponieważ implementacja natywnie używa kodowania UTF-8.Using a String is not as efficient as using the UTF-8 methods since the implementation natively uses UTF-8.

Aby uzyskać więcej informacji, zobacz jak serializować i deserializować JSON.For more information, see How to serialize and deserialize JSON.

Deserialize(Utf8JsonReader, Type, JsonSerializerOptions)

Odczytuje jedną wartość JSON (łącznie z obiektami lub tablicami) z podanego czytnika i konwertuje ją na wystąpienie określonego typu.Reads one JSON value (including objects or arrays) from the provided reader and converts it into an instance of a specified type.

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 = null) As Object

Parametry

reader
Utf8JsonReader

Czytnik, z którego ma zostać odczytany kod JSON.The reader to read the JSON from.

returnType
Type

Typ obiektu do przekonwertowania i zwrócenia.The type of the object to convert to and return.

options
JsonSerializerOptions

Opcje sterujące zachowaniem serializatora podczas odczytu.Options to control the serializer behavior during reading.

Zwraca

returnType reprezentacja wartości JSON.A returnType representation of the JSON value.

Wyjątki

returnType jest null.returnType is null.

KOD JSON jest nieprawidłowy.The JSON is invalid.

lub-or-

returnType nie jest zgodna z formatem JSON.returnType is not compatible with the JSON.

lub-or-

Nie można odczytać wartości z czytnika.A value could not be read from the reader.

reader korzysta z nieobsługiwanych opcji.reader is using unsupported options.

Uwagi

Jeśli TokenType Właściwość reader jest JsonTokenType.PropertyName lub JsonTokenType.None, czytnik zostanie zaawansowany przez jedno wywołanie do Utf8JsonReader.Read(), aby określić początek wartości.If the TokenType property of reader is JsonTokenType.PropertyName or JsonTokenType.None, the reader will be advanced by one call to Utf8JsonReader.Read() to determine the start of the value.

Po zakończeniu tej metody reader zostanie umieszczony w końcowym tokenie w wartości JSON.Upon completion of this method, reader will be positioned at the final token in the JSON value. Jeśli wystąpi wyjątek, czytnik zostanie zresetowany do stanu, w którym był on wywoływany podczas wywoływania metody.If an exception is thrown, the reader is reset to the state it was in when the method was called.

Ta metoda wykonuje kopię danych, na której działa czytelnik, dlatego nie istnieje wymóg wywołujący, aby zachować integralność danych poza przywróceniem tej metody.This method makes a copy of the data the reader acted on, so there is no caller requirement to maintain data integrity beyond the return of this method.

JsonReaderOptions używany do tworzenia wystąpienia Utf8JsonReader mają pierwszeństwo przed JsonSerializerOptions w przypadku ich konfliktu.The JsonReaderOptions used to create the instance of the Utf8JsonReader take precedence over the JsonSerializerOptions when they conflict. W związku z tym podczas odczytywania używane są JsonReaderOptions.AllowTrailingCommas, JsonReaderOptions.MaxDepthi JsonReaderOptions.CommentHandling.Hence, JsonReaderOptions.AllowTrailingCommas, JsonReaderOptions.MaxDepth, and JsonReaderOptions.CommentHandling are used while reading.

Aby uzyskać więcej informacji, zobacz jak serializować i deserializować JSON.For more information, see How to serialize and deserialize JSON.

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

Analizuje zakodowany tekst UTF-8 reprezentujący pojedynczą wartość JSON w wystąpieniu typu określonego przez parametr typu ogólnego.Parses the UTF-8 encoded text representing a single JSON value into an instance of the type specified by a generic type parameter.

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 = null) As TValue

Parametry typu

TValue

Typ docelowy tekstu zakodowanego w formacie UTF-8.The target type of the UTF-8 encoded text.

Parametry

utf8Json
ReadOnlySpan<Byte>

Tekst JSON do przeanalizowania.The JSON text to parse.

options
JsonSerializerOptions

Opcje sterujące zachowaniem podczas analizy.Options to control the behavior during parsing.

Zwraca

TValue

TValue reprezentacja wartości JSON.A TValue representation of the JSON value.

Wyjątki

KOD JSON jest nieprawidłowy.The JSON is invalid.

lub-or-

TValue nie jest zgodna z formatem JSON.TValue is not compatible with the JSON.

lub-or-

Pozostałe dane w zakresie wykraczają poza pojedynczą wartość JSON.There is remaining data in the span beyond a single JSON value.

Uwagi

Aby uzyskać więcej informacji, zobacz jak serializować i deserializować JSON.For more information, see How to serialize and deserialize JSON.

Deserialize<TValue>(String, JsonSerializerOptions)

Analizuje tekst reprezentujący pojedynczą wartość JSON w wystąpieniu typu określonego przez parametr typu ogólnego.Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter.

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 = null) As TValue

Parametry typu

TValue

Typ docelowy wartości JSON.The target type of the JSON value.

Parametry

json
String

Tekst JSON do przeanalizowania.The JSON text to parse.

options
JsonSerializerOptions

Opcje sterujące zachowaniem podczas analizy.Options to control the behavior during parsing.

Zwraca

TValue

TValue reprezentacja wartości JSON.A TValue representation of the JSON value.

Wyjątki

json jest null.json is null.

KOD JSON jest nieprawidłowy.The JSON is invalid.

lub-or-

TValue nie jest zgodna z formatem JSON.TValue is not compatible with the JSON.

lub-or-

W ciągu powyżej pojedynczej wartości JSON znajdują się pozostałe dane.There is remaining data in the string beyond a single JSON value.

Uwagi

Używanie String nie jest tak wydajne jak korzystanie z metod UTF-8, ponieważ implementacja natywnie używa kodowania UTF-8.Using a String is not as efficient as using the UTF-8 methods since the implementation natively uses UTF-8.

Aby uzyskać więcej informacji, zobacz jak serializować i deserializować JSON.For more information, see How to serialize and deserialize JSON.

Deserialize<TValue>(Utf8JsonReader, JsonSerializerOptions)

Odczytuje jedną wartość JSON (łącznie z obiektami lub tablicami) z podanego czytnika do wystąpienia typu określonego przez parametr typu ogólnego.Reads one JSON value (including objects or arrays) from the provided reader into an instance of the type specified by a generic type parameter.

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 = null) As TValue

Parametry typu

TValue

Typ docelowy wartości JSON.The target type of the JSON value.

Parametry

reader
Utf8JsonReader

Czytnik, z którego ma zostać odczytany kod JSON.The reader to read the JSON from.

options
JsonSerializerOptions

Opcje sterujące zachowaniem serializatora podczas odczytu.Options to control serializer behavior during reading.

Zwraca

TValue

TValue reprezentacja wartości JSON.A TValue representation of the JSON value.

Wyjątki

KOD JSON jest nieprawidłowy.The JSON is invalid.

lub-or-

TValue nie jest zgodna z formatem JSON.TValue is not compatible with the JSON.

lub-or-

Nie można odczytać wartości z czytnika.A value could not be read from the reader.

reader używa nieobsługiwanych opcji.reader uses unsupported options.

Uwagi

Jeśli TokenType Właściwość reader jest JsonTokenType.PropertyName lub JsonTokenType.None, czytnik zostanie zaawansowany przez jedno wywołanie do Utf8JsonReader.Read(), aby określić początek wartości.If the TokenType property of reader is JsonTokenType.PropertyName or JsonTokenType.None, the reader will be advanced by one call to Utf8JsonReader.Read() to determine the start of the value.

Po zakończeniu tej metody reader zostanie umieszczony w końcowym tokenie w wartości JSON.Upon completion of this method, reader will be positioned at the final token in the JSON value. Jeśli wystąpi wyjątek, czytnik zostanie zresetowany do stanu, w którym był on wywoływany podczas wywoływania metody.If an exception is thrown, the reader is reset to the state it was in when the method was called.

Ta metoda wykonuje kopię danych, na której działa czytelnik, dlatego nie istnieje wymóg wywołujący, aby zachować integralność danych poza przywróceniem tej metody.This method makes a copy of the data the reader acted on, so there is no caller requirement to maintain data integrity beyond the return of this method.

JsonReaderOptions używany do tworzenia wystąpienia Utf8JsonReader mają pierwszeństwo przed JsonSerializerOptions w przypadku ich konfliktu.The JsonReaderOptions used to create the instance of the Utf8JsonReader take precedence over the JsonSerializerOptions when they conflict. W związku z tym podczas odczytywania używane są JsonReaderOptions.AllowTrailingCommas, JsonReaderOptions.MaxDepthi JsonReaderOptions.CommentHandling.Hence, JsonReaderOptions.AllowTrailingCommas, JsonReaderOptions.MaxDepth, and JsonReaderOptions.CommentHandling are used while reading.

Aby uzyskać więcej informacji, zobacz jak serializować i deserializować JSON.For more information, see How to serialize and deserialize JSON.

Dotyczy