2017-02-16 2 views
0

Ich versuche, die folgende JSON-Zeichenfolge in C# deserialize, aber es funktioniert nicht richtig.Benötigen Sie Hilfe deserializing JSON Zeichenfolge mit C# javascriptserializer

Der folgende Code gibt eine Anzahl von 0 zurück. Ich bin mir nicht sicher, was ich falsch mache.

JavaScriptSerializer ser = new JavaScriptSerializer(); 
Addresses addresses = ser.Deserialize<Addresses>(json); 

Meine JSON ist:

{ 
    "addresses":[ 
{ 
    "first_name":"Sarah", 
    "last_name":"Halawani", 
    "line1":"1653 OCEAN PKWY", 
    "company":"", 
    "city":"BROOKLYN", 
    "state":"NY", 
    "subscriber_id":null, 
    "country_name":"United States", 
    "country_abbreviation":"USA", 
    "latitude":"40.6085", 
    "longitude":"-73.9675", 
    "verified":true 
}, 
{ 
    "first_name":"Jean", 
    "last_name":"Mizrahi", 
    "line1":"1733 OCEAN PKWY", 
    "company":"", 
    "city":"BROOKLYN", 
    "state":"NY", 
    "subscriber_id":null, 
    "country_name":"United States", 
    "country_abbreviation":"USA", 
    "latitude":"40.6065", 
    "longitude":"-73.9671", 
    "verified":true 
} 
    ] 
} 

Und meine Klassen sind:

public class Addresses 
{ 
    public List<Address> address { get; set; } 
    public Addresses() { address = new List<Address>(); } 
} 

public class Address 
{ 
    public string first_name { get; set; } 
    public string last_name { get; set; } 
    public string line1 { get; set; } 
    public string company { get; set; } 
} 
+1

enthält die Json-Variable Daten? Sie haben diesen Teil des Codes nicht eingeschlossen – Coder

+0

Dies wurde durch Korrigieren eines Rechtschreibfehlers behoben. –

Antwort

1

Sie die Eigenschaft falsch geschrieben address. Es sollte sein addresses die JSON Eigenschaftsnamen übereinstimmen:

public class Addresses 
{ 
    public List<Address> addresses { get; set; } 
    public Addresses() { addresses = new List<Address>(); } 
} 

Um Fehler wie dies zu vermeiden, sollten Sie einen Code-Generation-Tool wie http://json2csharp.com/ oder Paste JSON as Classes in Visual Studio, und dann unerwünschte Eigenschaften manuell zu entfernen.

+0

Danke dbc! Das hat es getan. – user3321095

Verwandte Themen