Heim >Backend-Entwicklung >C++ >Wie kann ich JSON mit illegalen C# -Kennungen deserialisieren?

Wie kann ich JSON mit illegalen C# -Kennungen deserialisieren?

Linda Hamilton
Linda HamiltonOriginal
2025-02-02 12:16:111033Durchsuche

How to Deserialize JSON with Illegal C# Identifiers?

Behandlung JSON Back Serialisierung mit einem ungültigen C#-Is identifier

Wenn die Werte des C#-Is -Kennung nicht in die gültige C#-Kennung in der zähler -serialisierten JSON -Zeichenfolge konvertiert werden können, können einige alternative Methoden berücksichtigt werden.

Verwenden Sie das Wörterbuch

Um mit dieser Situation umzugehen, können Sie in Betracht ziehen, die JSON -Zeichenfolge in ein Wörterbuch anstelle der Klasse zu verwandeln. Das Wörterbuch ermöglicht die Verwendung von String als Schlüssel, um eine flexible Möglichkeit zu bieten, auf die Daten zuzugreifen, auch wenn die Kennung ungültig ist.

Folgendes ist ein Beispiel für die Behandlung dieser Situation mit Wörterbuch:

für die JSON -Zeichenfolge im Problem:
<code class="language-csharp">public class Item
{
    public string fajr { get; set; }
    public string sunrise { get; set; }
    public string zuhr { get; set; }
    public string asr { get; set; }
    public string maghrib { get; set; }
    public string isha { get; set; }
}

// 将JSON字符串反序列化为字典
var dict = JsonConvert.DeserializeObject<Dictionary<string, Item>>(json);</code>

Sie können den String -Schlüssel ("1" und "2") verwenden, um auf die Daten im Wörterbuch zuzugreifen, zum Beispiel:
<code class="language-json">{
"1": {
    "fajr": "04:15",
    "sunrise": "05:42",
    "zuhr": "12:30",
    "asr": "15:53",
    "maghrib": "19:18",
    "isha": "20:40"
},
"2": {
    "fajr": "04:15",
    "sunrise": "05:42",
    "zuhr": "12:30",
    "asr": "15:53",
    "maghrib": "19:18",
    "isha": "20:41"
 } 
}</code>

Das obige ist der detaillierte Inhalt vonWie kann ich JSON mit illegalen C# -Kennungen deserialisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn