2011-01-12 41 views
5

Không thể tìm thấy bất kỳ tài liệu cho việc này ...làm việc như thế paging trên C# Facebook sdk

Hiện đang sử dụng đoạn mã sau để có được một danh sách các hình ảnh của tôi:

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

Tôi đang đi xe đạp qua 25 ảnh đầu tiên mà nó trả về. Đơn giản.

Bây giờ, làm cách nào để nó trở lại 25 tiếp theo?

Cho đến nay tôi đã thử điều này:

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; 
} 

nhưng nó không ném:

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

Tôi có phải sử dụng một biến tươi dynamic cho mọi yêu cầu, hoặc tôi đi về việc này sai cách hoàn toàn?

+0

Câu hỏi này có nhiều thông tin tốt hơn: https://stackoverflow.com/questions/41418671/how-is-facebook-graph-api-pagination-works-and-how-to-iterate-facebook-user-feed –

Trả lời

10

Đã kết thúc việc tìm kiếm này:

// 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); 
+0

Bạn nên sử dụng "dynamic parameters =" – danpop

+0

Có cách nào để chơi với phân trang dựa trên con trỏ cho nguồn cấp dữ liệu không? với facebook C# SDK? –

+0

https://stackoverflow.com/questions/41418671/how-is-facebook-graph-api-pagination-works-and-how-to-iterate-facebook-user-feed –

5

Tôi cũng thấy bạn có thể sử dụng này.

// 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"}); 

Làm việc giống như bạn đã sử dụng ở trên.

+1

Tôi thích sử dụng năng động ở bất cứ nơi nào có thể chỉ vì sợ các trường đại học của tôi rất nhiều. – Tim

+0

Điều này có khả năng sẽ cung cấp cho bạn các bản sao nếu một album mới được thêm vào. Toàn bộ điểm của hệ thống phân trang là để ngăn cản điều này. –

+0

Xem phần Giải mã câu trả lời của Freak trên https://stackoverflow.com/questions/41418671/how-is-facebook-graph-api-pagination-works-and-how-to-iterate-facebook-user-feed –

Các vấn đề liên quan