2012-11-20 80 views
2

我正在開發一個應用程序,我使用json格式的服務器上的數據。 但是我能夠正常解析JSON數據,但無法解析使用數組JSON數據,如何使用Litjson解析json數組?

JSON響應在下面給出,

[{"id_user":"80","services": 
    [{"idservice":"3","title":"dni-e","message":"Texto para el dni-e"}, 
    {"idservice":"4","title":"Tarjeta azul","message":"Texto para la tarjeta azul"}] 
}] 

我怎麼能讀這個JSON陣列?

注意:我使用Litjson進行解析。

回答

7

您應該創建yourselft以下POCO對象:

public class Service 
{ 
    public int idservice { get; set; } 

    public string title { get; set; } 

    public string message { get; set; } 
} 

public class UserServices 
{ 
    public int id_user { get; set; } 

    public List<Service> services { get; set; } 
} 

LitJSON將反序列化這個外的開箱:

UserServices services = JsonMapper.ToObject<UserServices>(rawJson); 

您也可以使用非通用變種替代(下文樣品會將所有數據寫入控制檯):

JsonData data = JsonMapper.ToObject(rawJson); 
Console.WriteLine("User id: {0}", data["id_user"]); 
Console.WriteLine("Services:"); 
for (int i = 0; i < data["services"].length; i++) 
{ 
    Console.WriteLine (" Id: {0}; Title: {1}; Message {2}", data["services"][i]["idservice"], data["services"][i]["title"], data["services"][i]["message"]); 
} 
+0

Thanks !!!它的工作很好! – dd619