gpt4 book ai didi

c# - 用于模拟 Facebook SDK 的 JsonObject

转载 作者:太空狗 更新时间:2023-10-29 18:19:15 25 4
gpt4 key购买 nike

我必须将 facebook c# sdk 用于 .net 3.5 中的新项目,我知道最新版本有 4 的示例 - 但它也是针对 3.5 编译的,因此可以完全工作。

无论如何,如果我非常愚蠢,请原谅我。但是我希望将 json 对象转换为我的模型,我可以这样做吗?

public ActionResult About()
{
var app = new FacebookApp();
JsonObject friends = (JsonObject)app.Get("me/friends");
ViewData["Albums"] = new Friends((string)friends.ToString());
return View();
}

public class Friends
{
public string name { get; set; }
public string id { get; set; }

public Friends(string json)
{
JArray jObject = JArray.Parse(json);
JToken jData = jObject["data"];

name = (string)jData["name"];
id = (string)jData["id"];
}
}

这是使用 Json.Net。显然这是行不通的,我得到的错误是

从 JsonReader 读取 JArray 时出错。当前 JsonReader 项不是数组:StartObject

我很确定我在这方面完全走错了路 - 所以如果有人可以提供任何提示,我将非常感激。

最佳答案

也许这段代码会有所帮助:

public class Friend
{
public string Id { get; set; }
public string Name { get; set; }
}

...

public ActionResult About()
{
var app = new FacebookApp();
var result = (JsonObject)app.Get("me/friends"));
var model = new List<Friend>();

foreach( var friend in (JsonArray)result["data"])
model.Add( new Friend()
{
Id = (string)(((JsonObject)friend)["id"]),
Name = (string)(((JsonObject)friend)["name"])
};

return View(model);
}

现在您的模型将是 List<Friend> 类型

关于c# - 用于模拟 Facebook SDK 的 JsonObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4748601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com