Получить данные пользователя Facebook SDK C # - PullRequest
1 голос
/ 30 июня 2011

Мне интересно, как я могу получить выбранные данные пользователя из Facebook, используя Facebook SDK C # для Windows Phone 7?

Мой текущий код:

fbClient = new FacebookClient(App._accessToken);    
fbClient.GetAsync("/me", new Dictionary<string, object> { {"fields", "id, name, first_name, last_name, picture"} , {"access_token", App._accessToken} });

Что мне делать с этим кодомсейчас?

Как мне напечатать на экране свое имя?

С уважением, Марио

Ответы [ 2 ]

0 голосов
/ 04 июля 2011

Я нашел решение для моего случая. Я решил это с DataContext.

Решение:

Часть MainPage.cs:

if (App._loggedIn)
            {
                fbClient = new FacebookClient(App._accessToken);

                fbClient.GetCompleted +=
                 (o, arg) =>
                 {
                     if (arg.Error == null)
                     {
                         var result = (IDictionary)arg.GetResultData();

                         // Get user name
                         this.userName = result["name"].ToString();

                         Dispatcher.BeginInvoke(() => this.DataContext = this);
                     }
                     else
                     {
                         MessageBox.Show(arg.Error.Message);
                     }
                 };

                 fbClient.GetAsync("/me", new Dictionary{{"fields","id,name,first_name,last_name,picture"} , {"access_token", App._accessToken}});
            }

MainPage.xaml:

<TextBlock Grid.Column="1" Height="30" HorizontalAlignment="Left" Margin="0,6,0,0" Name="text_userName" Text="{Binding Path=UserName}" VerticalAlignment="Top" />
0 голосов
/ 30 июня 2011

вам нужно поместить выход из fbClient.GetAsync в переменную, что-то вроде

JsonResult result = fbClient.GetAsync(
    "/me", 
    new Dictionary<string, object> 
    { 
        {"fields", "id, name, first_name, last_name, picture"}, 
        {"access_token", App._accessToken} 
    });

затем получите доступ к полученным данным из результата.

...