Ich versuche, eine Zeichenfolge von JSON-Daten in ein C# -Klasseobjekt zu konvertieren. Allerdings habe ich ein Problem mit einem kleinen Teil des JSON, der von Natur aus dynamisch ist.Json DeserializeObject in Klasse mit dynamischer Eigenschaft
Der Teil des JSON ist unten:
"contact": [{
"comment": null,
"type": {
"id": "cell",
"name": "Example name"
},
"preferred": true,
"value": {
"country": "7",
"formatted": "+7 (702) 344-3423-3",
"number": "3498908",
"city": "702"
}
},
{
"type": {
"id": "email",
"name": "Email example"
},
"preferred": false,
"value": "[email protected]"
}]
C# -Klassen
public class Value
{
public string country { get; set; }
public string formatted { get; set; }
public string number { get; set; }
public string city { get; set; }
}
public class Type
{
public string id { get; set; }
public string name { get; set; }
}
public class Contact
{
public string comment { get; set; }
public Type type { get; set; }
public bool preferred { get; set; }
public string value { get; set; }
}
C# -Code
Contact contact = JsonConvert.DeserializeObject<Contact>(result);
Das Format von "Wert" Änderungen an den Kontaktinformationen abhängig. Ist es möglich, Werte sowohl als String als auch als Klasse Value abzubilden?
Danke für jede Hilfe, die zur Verfügung gestellt werden kann.
mir sieht es aus wie Sie die Klassenstruktur falsch haben. sieht so aus, als ob es eine Basisklasse Value und zwei weitere Klassen AddressValue und EmailValue gibt. –