使用Json数据填充列表并从中获取对象
问题描述:
我有一个php webservice,它从数据库获取数据并将其作为json数据返回。使用Json数据填充列表并从中获取对象
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 !!
我填人l将对象添加到“列表”中。通过计数测试,我发现它已经填满了。但是,如果我尝试从中获取对象,则会出现空错误。
那么,我该如何正确填写我的列表,以便我可以从中获取对象呢?
答
http://json2csharp.com/建议了这些定义。 (多一个类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; }
}
谢谢你这个有用的网站。我只编辑了我的_object clasess_。其余的保持原样。然后我可以得到像'list.faqs [0] .faq.id'这样的对象。 – 2013-05-03 14:32:03