0

データベースからデータを取得してjsonデータとして返すphp Webサービスがあります。

Json データ

{"faqs":
   [
        {"faq":{"id":"123"}},
        {"faq":{"id":"124"}}
   ]
}

オブジェクト クラス

public class FaqList
{
    public List<Faq> faqs { get; set; }
}
public class Faq
{
    public string id { get; set; }
}

テストクラス

var client = new HttpClient();
HttpResponseMessage response = await client.GetAsync(new Uri("http://www.mydomain.com/webservice/7/server.php"));
var jsonString = await response.Content.ReadAsStringAsync();

FaqList list = JsonConvert.DeserializeObject<FaqList>(jsonString);

list.faqs.Count() => 2
list.faqs[0].id   => NULL !!

すべてのオブジェクトを「リスト」に入力します。count テストでは、それが満たされていることがわかります。しかし、そこからオブジェクトを取得しようとすると、null エラーが発生します。

では、リストからオブジェクトを取得できるように、リストを正しく埋めるにはどうすればよいでしょうか?

4

1 に答える 1

0

http://json2csharp.com/は、これらの定義を示唆しています。(あと1クラスFaq2)

public class Faq2
{
    public string id { get; set; }
}

public class Faq
{
    public Faq2 faq { get; set; }
}

public class RootObject
{
    public List<Faq> faqs { get; set; }
}
于 2013-05-03T13:09:09.587 に答える