Как работает пейджинг в C # Facebook SDK - PullRequest
5 голосов
/ 12 января 2011

Не могу найти никакой документации для этого ...

В настоящее время использую следующий код для получения списка моих фотографий:

FacebookApp fb = new FacebookApp(accessToken);
dynamic test = fb.Get("me/photos");

Я перебираю первые 25 фотографий, которыеэто возвращается.Просто.

Теперь, как же заставить его вернуть следующие 25?

До сих пор я пробовал это:

FacebookApp fb = new FacebookApp(accessToken);
string query = "me/photos";

while (true)
{
    dynamic test = fb.Get(query);

    foreach (dynamic each in test.data)
    {
        // do something here
    }

    query = test.paging.next;
}

, но он не выдает бросок:

Could not parse '2010-08-30T17%3A58%3A56%2B0000' into a date or time.

Нужно ли использовать свежую переменную dynamic для каждогозапрос, или я иду по этому пути совсем не так?

Ответы [ 2 ]

10 голосов
/ 13 января 2011

Закончилось нахождением этого:

// first set (1-25)
var parameters = new ExpandoObject();
parameters.limit = 25;
parameters.offset = 0;

app.Api("me/friends", parameters);

// next set (26-50)
var parameters = new ExpandoObject();
parameters.limit = 25;
parameters.offset = 25;

app.Api("me/friends", parameters);
5 голосов
/ 24 августа 2012

Я также обнаружил, что вы можете использовать это.

// for the first 25 albums (in this case) 1-25
dynamic albums = client.Get("me/albums", new { limit = "25", offset = "0"});

// for the next 25 albums, 26-50
dynamic albums = client.Get("me/albums", new { limit = "25", offset = "25"});

Работал так же, как вы использовали выше.

...