JsonSerializer.Deserialize Methode

Definition

Überlädt

Deserialize(ReadOnlySpan<Byte>, Type, JsonSerializerOptions)

Analysiert den UTF-8-codierten Text, der einen einzelnen JSON-Wert darstellt, in eine Instanz eines angegebenen Typs.Parses the UTF-8 encoded text representing a single JSON value into an instance of a specified type.

Deserialize(String, Type, JsonSerializerOptions)

Analysiert den Text, der einen einzelnen JSON-Wert darstellt, in eine Instanz eines angegebenen Typs.Parses the text representing a single JSON value into an instance of a specified type.

Deserialize(Utf8JsonReader, Type, JsonSerializerOptions)

Liest einen JSON-Wert (einschließlich Objekten oder Arrays) aus dem bereitgestellten Reader und konvertiert ihn in eine Instanz eines angegebenen Typs.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)

Analysiert den UTF-8-codierten Text, der einen einzelnen JSON-Wert darstellt, in eine Instanz des Typs, der durch einen generischen Typparameter angegeben wird.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)

Analysiert den Text, der einen einzelnen JSON-Wert darstellt, in eine Instanz des Typs, der durch einen generischen Typparameter angegeben wird.Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter.

Deserialize<TValue>(Utf8JsonReader, JsonSerializerOptions)

Liest einen JSON-Wert (einschließlich Objekten oder Arrays) aus dem bereitgestellten Reader in eine Instanz des Typs, der durch einen generischen Typparameter angegeben wird.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)

Analysiert den UTF-8-codierten Text, der einen einzelnen JSON-Wert darstellt, in eine Instanz eines angegebenen Typs.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

Parameter

utf8Json
ReadOnlySpan<Byte>

Ruft den zu analysierenden JSON-Text ab.The JSON text to parse.

returnType
Type

Der Typ des Objekts, in das konvertiert und das zurückgegeben werden soll.The type of the object to convert to and return.

options
JsonSerializerOptions

Optionen zum Steuern des Verhaltens während der Analyse.Options to control the behavior during parsing.

Gibt zurück

Object

Eine returnType-Darstellung des JSON-Werts.A returnType representation of the JSON value.

Ausnahmen

returnType ist nullreturnType is null.

Der JSON-Code ist ungültig.The JSON is invalid.

Oder-or-

returnType ist nicht mit dem JSON-Code kompatibel.returnType is not compatible with the JSON.

Oder-or-

Es sind noch Daten im Bereich über einen einzelnen JSON-Wert hinaus vorhanden.There is remaining data in the span beyond a single JSON value.

Es ist kein kompatibler JsonConverter für returnType oder seine serialisierbaren Member vorhanden.There is no compatible JsonConverter for returnType or its serializable members.

Hinweise

Weitere Informationen finden Sie unter Gewusst wie: Serialisieren und Deserialisieren von JSON.For more information, see How to serialize and deserialize JSON.

Deserialize(String, Type, JsonSerializerOptions)

Analysiert den Text, der einen einzelnen JSON-Wert darstellt, in eine Instanz eines angegebenen Typs.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

Parameter

json
String

Ruft den zu analysierenden JSON-Text ab.The JSON text to parse.

returnType
Type

Der Typ des Objekts, in das konvertiert und das zurückgegeben werden soll.The type of the object to convert to and return.

options
JsonSerializerOptions

Optionen zum Steuern des Verhaltens während der Analyse.Options to control the behavior during parsing.

Gibt zurück

Object

Eine returnType-Darstellung des JSON-Werts.A returnType representation of the JSON value.

Ausnahmen

json oder returnType ist null.json or returnType is null.

Der JSON-Code ist ungültig.The JSON is invalid.

Oder-or-

TValue ist nicht mit dem JSON-Code kompatibel.TValue is not compatible with the JSON.

Oder-or-

Es sind noch Daten in der Zeichenfolge über einen einzelnen JSON-Wert hinaus vorhanden.There is remaining data in the string beyond a single JSON value.

Es ist kein kompatibler JsonConverter für returnType oder seine serialisierbaren Member vorhanden.There is no compatible JsonConverter for returnType or its serializable members.

Hinweise

Die Verwendung eines String ist nicht so effizient wie die Verwendung der UTF-8-Methoden, da die Implementierung UTF-8 nativ verwendet.Using a String is not as efficient as using the UTF-8 methods since the implementation natively uses UTF-8.

Weitere Informationen finden Sie unter Gewusst wie: Serialisieren und Deserialisieren von JSON.For more information, see How to serialize and deserialize JSON.

Deserialize(Utf8JsonReader, Type, JsonSerializerOptions)

Liest einen JSON-Wert (einschließlich Objekten oder Arrays) aus dem bereitgestellten Reader und konvertiert ihn in eine Instanz eines angegebenen Typs.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

Parameter

reader
Utf8JsonReader

Der Reader, aus dem der JSON-Inhalt gelesen werden soll.The reader to read the JSON from.

returnType
Type

Der Typ des Objekts, in das konvertiert und das zurückgegeben werden soll.The type of the object to convert to and return.

options
JsonSerializerOptions

Optionen zum Steuern des Serialisiererverhaltens während des Lesevorgangs.Options to control the serializer behavior during reading.

Gibt zurück

Object

Eine returnType-Darstellung des JSON-Werts.A returnType representation of the JSON value.

Ausnahmen

returnType ist nullreturnType is null.

Der JSON-Code ist ungültig.The JSON is invalid.

Oder-or-

returnType ist nicht mit dem JSON-Code kompatibel.returnType is not compatible with the JSON.

Oder-or-

Es konnte kein Wert aus dem Reader gelesen werden.A value could not be read from the reader.

reader verwendet nicht unterstützte Optionen.reader is using unsupported options.

Es ist kein kompatibler JsonConverter für returnType oder seine serialisierbaren Member vorhanden.There is no compatible JsonConverter for returnType or its serializable members.

Hinweise

Wenn die TokenType-Eigenschaft von reader JsonTokenType.PropertyName oder JsonTokenType.Noneist, wird der Reader durch einen aufzurufenden Utf8JsonReader.Read() erweitert, um den Anfang des Werts zu bestimmen.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.

Nach Abschluss dieser Methode werden reader am endgültigen Token im JSON-Wert positioniert.Upon completion of this method, reader will be positioned at the final token in the JSON value. Wenn eine Ausnahme ausgelöst wird, wird der Reader auf den Zustand zurückgesetzt, in dem er sich befand, als die-Methode aufgerufen wurde.If an exception is thrown, the reader is reset to the state it was in when the method was called.

Diese Methode erstellt eine Kopie der Daten, auf die der Reader reagiert hat, sodass keine aufruferanforderung vorhanden ist, die die Datenintegrität über die Rückgabe dieser Methode hinaus aufrechtzuerhalten.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.

Der JsonReaderOptions, der zum Erstellen der Instanz des Utf8JsonReader verwendet wird, hat Vorrang vor dem JsonSerializerOptions, wenn Sie einen Konflikt verursachen.The JsonReaderOptions used to create the instance of the Utf8JsonReader take precedence over the JsonSerializerOptions when they conflict. Daher werden JsonReaderOptions.AllowTrailingCommas, JsonReaderOptions.MaxDepthund JsonReaderOptions.CommentHandling beim Lesen verwendet.Hence, JsonReaderOptions.AllowTrailingCommas, JsonReaderOptions.MaxDepth, and JsonReaderOptions.CommentHandling are used while reading.

Weitere Informationen finden Sie unter Gewusst wie: Serialisieren und Deserialisieren von JSON.For more information, see How to serialize and deserialize JSON.

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

Analysiert den UTF-8-codierten Text, der einen einzelnen JSON-Wert darstellt, in eine Instanz des Typs, der durch einen generischen Typparameter angegeben wird.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

Typparameter

TValue

Der Zieltyp des UTF-8-codierten Texts.The target type of the UTF-8 encoded text.

Parameter

utf8Json
ReadOnlySpan<Byte>

Ruft den zu analysierenden JSON-Text ab.The JSON text to parse.

options
JsonSerializerOptions

Optionen zum Steuern des Verhaltens während der Analyse.Options to control the behavior during parsing.

Gibt zurück

TValue

Eine TValue-Darstellung des JSON-Werts.A TValue representation of the JSON value.

Ausnahmen

Der JSON-Code ist ungültig.The JSON is invalid.

Oder-or-

TValue ist nicht mit dem JSON-Code kompatibel.TValue is not compatible with the JSON.

Oder-or-

Es sind noch Daten im Bereich über einen einzelnen JSON-Wert hinaus vorhanden.There is remaining data in the span beyond a single JSON value.

Es ist kein kompatibler JsonConverter für TValue oder seine serialisierbaren Member vorhanden.There is no compatible JsonConverter for TValue or its serializable members.

Hinweise

Weitere Informationen finden Sie unter Gewusst wie: Serialisieren und Deserialisieren von JSON.For more information, see How to serialize and deserialize JSON.

Deserialize<TValue>(String, JsonSerializerOptions)

Analysiert den Text, der einen einzelnen JSON-Wert darstellt, in eine Instanz des Typs, der durch einen generischen Typparameter angegeben wird.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

Typparameter

TValue

Der Zieltyp des JSON-Werts.The target type of the JSON value.

Parameter

json
String

Ruft den zu analysierenden JSON-Text ab.The JSON text to parse.

options
JsonSerializerOptions

Optionen zum Steuern des Verhaltens während der Analyse.Options to control the behavior during parsing.

Gibt zurück

TValue

Eine TValue-Darstellung des JSON-Werts.A TValue representation of the JSON value.

Ausnahmen

json ist nulljson is null.

Der JSON-Code ist ungültig.The JSON is invalid.

Oder-or-

TValue ist nicht mit dem JSON-Code kompatibel.TValue is not compatible with the JSON.

Oder-or-

Es sind noch Daten in der Zeichenfolge über einen einzelnen JSON-Wert hinaus vorhanden.There is remaining data in the string beyond a single JSON value.

Es ist kein kompatibler JsonConverter für TValue oder seine serialisierbaren Member vorhanden.There is no compatible JsonConverter for TValue or its serializable members.

Hinweise

Die Verwendung eines String ist nicht so effizient wie die Verwendung der UTF-8-Methoden, da die Implementierung UTF-8 nativ verwendet.Using a String is not as efficient as using the UTF-8 methods since the implementation natively uses UTF-8.

Weitere Informationen finden Sie unter Gewusst wie: Serialisieren und Deserialisieren von JSON.For more information, see How to serialize and deserialize JSON.

Deserialize<TValue>(Utf8JsonReader, JsonSerializerOptions)

Liest einen JSON-Wert (einschließlich Objekten oder Arrays) aus dem bereitgestellten Reader in eine Instanz des Typs, der durch einen generischen Typparameter angegeben wird.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

Typparameter

TValue

Der Zieltyp des JSON-Werts.The target type of the JSON value.

Parameter

reader
Utf8JsonReader

Der Reader, aus dem der JSON-Inhalt gelesen werden soll.The reader to read the JSON from.

options
JsonSerializerOptions

Optionen zum Steuern des Serialisiererverhaltens während des Lesevorgangs.Options to control serializer behavior during reading.

Gibt zurück

TValue

Eine TValue-Darstellung des JSON-Werts.A TValue representation of the JSON value.

Ausnahmen

Der JSON-Code ist ungültig.The JSON is invalid.

Oder-or-

TValue ist nicht mit dem JSON-Code kompatibel.TValue is not compatible with the JSON.

Oder-or-

Es konnte kein Wert aus dem Reader gelesen werden.A value could not be read from the reader.

reader verwendet nicht unterstützte Optionen.reader uses unsupported options.

Es ist kein kompatibler JsonConverter für TValue oder seine serialisierbaren Member vorhanden.There is no compatible JsonConverter for TValue or its serializable members.

Hinweise

Wenn die TokenType-Eigenschaft von reader JsonTokenType.PropertyName oder JsonTokenType.Noneist, wird der Reader durch einen aufzurufenden Utf8JsonReader.Read() erweitert, um den Anfang des Werts zu bestimmen.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.

Nach Abschluss dieser Methode werden reader am endgültigen Token im JSON-Wert positioniert.Upon completion of this method, reader will be positioned at the final token in the JSON value. Wenn eine Ausnahme ausgelöst wird, wird der Reader auf den Zustand zurückgesetzt, in dem er sich befand, als die-Methode aufgerufen wurde.If an exception is thrown, the reader is reset to the state it was in when the method was called.

Diese Methode erstellt eine Kopie der Daten, auf die der Reader reagiert hat, sodass keine aufruferanforderung vorhanden ist, die die Datenintegrität über die Rückgabe dieser Methode hinaus aufrechtzuerhalten.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.

Der JsonReaderOptions, der zum Erstellen der Instanz des Utf8JsonReader verwendet wird, hat Vorrang vor dem JsonSerializerOptions, wenn Sie einen Konflikt verursachen.The JsonReaderOptions used to create the instance of the Utf8JsonReader take precedence over the JsonSerializerOptions when they conflict. Daher werden JsonReaderOptions.AllowTrailingCommas, JsonReaderOptions.MaxDepthund JsonReaderOptions.CommentHandling beim Lesen verwendet.Hence, JsonReaderOptions.AllowTrailingCommas, JsonReaderOptions.MaxDepth, and JsonReaderOptions.CommentHandling are used while reading.

Weitere Informationen finden Sie unter Gewusst wie: Serialisieren und Deserialisieren von JSON.For more information, see How to serialize and deserialize JSON.

Gilt für: