Facebook SDK C# – 获取好友列表

使用Facebook SDK( http://facebooksdk.codeplex.com/ ),你可以这样做……

string myAccessToken = "something"; FacebookClient client = new FacebookClient(myAccessToken); IDictionary friendData = (IDictionary)client.Get("/me/friends"); 

现在如何从字典中获取朋友数据?

您从json数据存储朋友列表的function:

 string myAccessToken = "something"; FacebookClient client = new FacebookClient(myAccessToken); var friendListData = client.Get("/me/friends"); JObject friendListJson = JObject.Parse(friendListData.ToString()); List fbUsers = new List(); foreach (var friend in friendListJson["data"].Children()) { FbUser fbUser = new FbUser(); fbUser.Id = friend["id"].ToString().Replace("\"", ""); fbUser.Name = friend["name"].ToString().Replace("\"", ""); fbUsers.Add(fbUser); } 

facebook用户的类

 Class FbUser { String Id { set; get; } String Name { set; get; } } 

因为我有同样的问题,并且正在寻找一个很好的解决方案。 我用linq做了同样的事情,导致代码减少。 而且大部分时间都少了更多:)

 FacebookClient client = new FacebookClient(accessToken); dynamic friendListData = client.Get("/me/friends"); var result = (from i in (IEnumerable)friendListData.data select new { i.name, i.id }).ToList();