Ich möchte verschachtelten JSON lesen und die Daten in der Datenbank speichern. Ich bekomme JSON-Objekt als "Anwendung/Json" von Post-Methode zu meinem WCF-Service.Gelöschtes JSON-Objekt lesen
Dazu konvertiere ich die JSON zu Dictionary. Aber nur erste Level-Werte bekommen. Objekt für JSON der zweiten Ebene abrufen
Unten ist der Code, den ich JSON verdeckte bin mit Wörterbuch:
[Serializable]
public class JsonDictionary : ISerializable
{
private Dictionary<string, object> m_entries;
public JsonDictionary()
{
m_entries = new Dictionary<string, object>();
}
public IEnumerable<KeyValuePair<string, object>> Entries
{
get { return m_entries; }
}
protected JsonDictionary(SerializationInfo info, StreamingContext context)
{
m_entries = new Dictionary<string, object>();
foreach (var entry in info)
{
m_entries.Add(entry.Name, entry.Value);
}
}
public void GetObjectData(SerializationInfo info, StreamingContext context)
{
foreach (var entry in m_entries)
{
info.AddValue(entry.Key, entry.Value);
}
}
}
Unten ist die JSON-Buchung auf der WCF: diese
In, Objekt bekommen statt Wert für "office_address", "financial_details", "residence_address" und "personal_details".
{
"business_name": "Test Business",
"fk_loan_id": "kh-aaaaa3232",
"proprietor_details": {
"office_address": {
"email_id": "[email protected]",
"alternative_mobile_number": "00000",
"pincode": "00000",
"landline_number": "00000",
"city": "Tutne",
"flat_number": "000",
"street": "Test Street",
"locality": "tLocality",
"state": "SGDS",
"mobile_number": "0000000000"
},
"date_of_incorporation": "01/03/2010",
"financial_details": {
"TAN": "ghdg45341f",
"TIN": "dc5345fg6g",
"VAT": "dgdgd544t4",
"PAN": "AAAAA7614A"
},
"residence_address": {
"email_id": "[email protected]",
"alternative_mobile_number": "0000000",
"pincode": "00000",
"landline_number": "00000",
"city": "SFSS",
"flat_number": "055",
"street": "DASAW",
"locality": "Local",
"state": "AAAAA",
"mobile_number": "000000"
},
"personal_details": {
"gender": "M",
"date_of_birth": "06/07/1969",
"last_name": "AAA",
"middle_name": "A",
"first_name": "AAAA"
}
}
}
Sie habe definit Editiert Ihr Wörterbuch als 'Dictionary' und Sie erhalten ein 'Objekt' für einen Schlüssel. Das macht ein 'Dictionary '. Wenn Sie möchten, dass etwas anderes als ein Objekt zurückgegeben wird, verwenden Sie nicht "object" als Werttyp. –
Alles, was ich benutze, es betrachtet die office_address als Objekt, deren Zählung 0 – Sagar