Bei der Serialisierung von JSON -Daten zu C#-Objekt wird häufig festgestellt, dass die JSON -Struktur möglicherweise nicht immer alle in der Zielklasse definierten Attribute enthält. Um diese Situation effektiv zu bewältigen, bietet JSON.NET Optionen für die Verarbeitung fehlender Daten.
unter Berücksichtigung der folgenden C#Klasse:
und eine JSON -Beispielstruktur:
public class MyAccount { // ... (为简洁起见省略属性) }
, um diese JSON -Struktur in eine Instanz von MyAccount zu unterdrücken und das Fehlen von Attributen zu verarbeiten, können Sie die folgende Codezeile verwenden:
{ "givenname": ["Robert"], "passwordexpired": "20091031041550Z", "accountstatus": ["active"], "accountstatusexpiration": ["20100612000000Z"], // ... (为简洁起见省略其他属性) }
json.net verwendet automatisch die entsprechenden Werte in der JSON -Struktur, um die Attribute in myAccount zu füllen. Für alle fehlenden Attribute wird der Wert auf seinen stillen Wert festgelegt (z. B. ist der Standardwert des Referenztyps null).
var rootObject = JsonConvert.DeserializeObject<MyAccount>(jsonString);
Zusätzliche Beschreibung:
Berücksichtigung der Verwendung der Datenüberprüfung, um sicherzustellen, dass in der JSON -Struktur erforderliche Attribute vorhanden sind.
Das obige ist der detaillierte Inhalt vonWie geht JSON.NET mit fehlenden Daten um, wenn JSON nach C# deserialisiert wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!