3

サーバーからjson形式のデータを使用しているアプリケーションを開発しています。ただし、通常のjsonデータは解析できますが、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を使用しています。

4

1 に答える 1

8

次の 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"]);
}
于 2012-11-20T09:44:34.920 に答える