Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook SDK C#-获取好友列表_C#_Facebook_Facebook Graph Api_.net 3.5 - Fatal编程技术网

Facebook SDK C#-获取好友列表

Facebook SDK C#-获取好友列表,c#,facebook,facebook-graph-api,.net-3.5,C#,Facebook,Facebook Graph Api,.net 3.5,使用FacebookSDK(),您可以执行以下操作 string myAccessToken = "something"; FacebookClient client = new FacebookClient(myAccessToken); IDictionary<string, object> friendData = (IDictionary<string, object>)client.Get("/me/friends

使用FacebookSDK(),您可以执行以下操作

        string myAccessToken = "something";
        FacebookClient client = new FacebookClient(myAccessToken);
        IDictionary<string, object> friendData = (IDictionary<string, object>)client.Get("/me/friends");
string myAccessToken=“something”;
FacebookClient=新的FacebookClient(myAccessToken);
IDictionary friendData=(IDictionary)client.Get(“/me/friends”);

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

存储json数据中好友列表的函数:

string myAccessToken = "something";         
FacebookClient client = new FacebookClient(myAccessToken);         

var friendListData = client.Get("/me/friends");
JObject friendListJson = JObject.Parse(friendListData.ToString()); 

List<FbUser> fbUsers = new List<FbUser>();
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);
}

因为我也有同样的问题,并且正在寻找一个很好的解决方案。我对linq做了同样的事情,导致代码更少。大多数时候,少就是多:)

FacebookClient=newfacebookclient(accessToken);
动态friendListData=client.Get(“/me/friends”);
var result=(来自(IEnumerable)friendListData.data中的i
选择新的
{
i、 名字,
i、 身份证
}).ToList();

我们如何在回复的同时获得生日信息?有什么想法吗?。我使用了这个,但不起作用(“/me/friends?fields=id,name,生日”);不是为我在.net 4.5.1中编译的
Class FbUser {
    String Id { set; get; }
    String Name { set; get; }
}
FacebookClient client = new FacebookClient(accessToken);
dynamic friendListData = client.Get("/me/friends");
var result = (from i in (IEnumerable<dynamic>)friendListData.data
             select new
             {
                 i.name,
                 i.id
             }).ToList();