So konvertieren Sie JSON in eine C#-Klasse, wenn der „Name“ des Objekts ohne benutzerdefinierte Klassen variiert [Duplik
Posted: 04 Jan 2025, 04:53
Dieser JSON wird von einer API zurückgegeben (er gibt etwa 100 Elemente zurück):
Und ich kann diesen Code schreiben, um ihn zu deserialisieren:
Aber der Name („el“, „en“) ändert sich mit jeder Sprache, und daher kann ich nicht für jede Sprache benutzerdefinierte Klassen schreiben. Ich muss in der Lage sein, den JSON in ein Objekt wie dieses zu deserialisieren, damit es in einer Datenbank gespeichert werden kann.
Gibt es eine Möglichkeit, das zu tun?
Code: Select all
{
"translation": {
"el": {
"name": "Greek",
"nativeName": "Ελληνικά",
"dir": "ltr"
},
"en": {
"name": "English",
"nativeName": "English",
"dir": "ltr"
}
}
}
Code: Select all
// Root myDeserializedClass = JsonConvert.DeserializeObject(myJsonResponse);
public class El
{
public string name { get; set; }
public string nativeName { get; set; }
public string dir { get; set; }
}
public class En
{
public string name { get; set; }
public string nativeName { get; set; }
public string dir { get; set; }
}
public class Root
{
public Translation translation { get; set; }
}
public class Translation
{
public El el { get; set; }
public En en { get; set; }
}
Code: Select all
public class LanguageInfo{
public string LanguageId {get; set;}
public string Name {get;set;}
public string NativeName {get;set;}
public string Direction {get;set;}
}