JSON mit JsonConvert.DeserializeObject in die C#-POCO-Klasse deserialisieren
Frage:
Beim Versuch, JsonConvert.DeserializeObject zum Deserialisieren von JSON-Daten in eine C#-POCO-Klasse zu verwenden, wird eine Ausnahme aufgrund einer falschen Deserialisierung einer bestimmten Eigenschaft ausgelöst.
Antwort:
Um JsonConvert.DeserializeObject zum korrekten Deserialisieren von JSON in eine POCO-Klasse zu verwenden, muss sichergestellt werden, dass die Eigenschaftsnamen in der Klasse mit den Eigenschaftsnamen in den JSON-Daten übereinstimmen. Darüber hinaus können die folgenden Schritte erforderlich sein:
Beispiel:
Betrachten Sie das folgende Beispiel, in dem die Accounts-Eigenschaft in der User-Klasse von einem JSON-Objekt deserialisiert werden muss:
<code class="language-csharp">public class User { [JsonProperty("accounts")] public Account Accounts { get; set; } // 其他User属性此处省略,以简洁起见 } public class Account { public string github { get; set; } }</code>
Durch die Verwendung des JsonProperty-Attributs und die Deklaration der Accounts-Eigenschaft als bestimmtes Account-Objekt wird die Deserialisierung das JSON-Objekt für diese Eigenschaft korrekt verarbeiten.
Das obige ist der detaillierte Inhalt vonWie deserialisiere ich JSON mithilfe von JsonConvert.DeserializeObject ordnungsgemäß in eine C#-POCO-Klasse?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!