[英]Show json data in view in ASP.NET MVC3?
我正在开发Facebook应用程序,在其中我将获取用户的朋友详细信息
dynamic result = client.Get("me/friends"); //it gives friend's data for id, name
它提供数据
{
"data": [
{
"name": "Steven",
"id": "57564897"
},
{
"name": "Andy",
"id": "8487581"
}
}
现在,我想解析此数据并将其存储。 这样我就可以按自己的方式使用它。
我试图使用JSON.NET解析它,并将数据显示为
var model = JsonConvert.DeserializeObject<FriendDetail>(result.data);
在课堂里 :
public class FriendDetail
{
public string id { get; set; }
public string name { get; set; }
public FriendDetail(string i, string n)
{
id = i;
name = n;
}
}
现在,我可以将视图传递为“ return View(model)
”
但这给了我一个错误: The best overloaded method match for 'Newtonsoft.Json.JsonConvert.DeserializeObject<FBApp.Models.FBFriendDetail>(string)' has some invalid arguments
为什么会发生此错误?
请帮助我解析此json数据。
还有没有更好的方法来解析和存储 json数据,然后在视图中显示?
请帮忙
您试图将FriendDetail
对象的列表反序列化为单个FriendDetail
对象。 请尝试以下操作:
var jObject = JObject.Parse(result.ToString());
var model = JsonConvert.DeserializeObject<List<FriendDetail>>(jObject["data"].ToString());
编辑
这是我测试的方式:
var result =
@"{
""data"": [
{
""name"": ""Steven"",
""id"": ""57564897""
},
{
""name"": ""Andy"",
""id"": ""8487581""
}]
}";
var jObject = JObject.Parse(result.ToString());
var model = JsonConvert.DeserializeObject<List<FriendDetail>>(jObject["data"].ToString());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.