我正在收到专辑照片,该专辑共有44张照片,但sdk只返回了25张照片。这是一些限制还是我们要求接下来的25? 到目前为止我的代码是:
dynamic photos = app.Get(AlbumList[currentAlbumSelectedIndex].Id + "/photos");
int infoCount = 0;
foreach (dynamic albumPhoto in photos.data)
{
Classes.MyPhoto photoData = new Classes.MyPhoto();
photoData.Id = albumPhoto.id;
if (albumPhoto.name != null && albumPhoto.name.ToString().Length >100)
photoData.MyPhotoName = albumPhoto.name.ToString().Substring(0, 90) + "...";
else
photoData.MyPhotoName = albumPhoto.name;
byte[] imageBytes = function.GetImageFromUrl(albumPhoto.source);
Statuslabel.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(delegate()
{
if (imageBytes != null)
photoData.MyPhotoPicture = function.GetBitmapImage(imageBytes);
System.Windows.Forms.Application.DoEvents();
Statuslabel.Content = "Getting info of " + infoCount + " / " + photos.data.Count;
AlbumPhotoList.Add(photoData);
if (imageAlbumPhotos.Source == null)
{
imageAlbumPhotos.Source = AlbumPhotoList[0].MyPhotoPicture;
labelAlbumPics.Content = AlbumPhotoList[0].MyPhotoName;
AlbumPictureGetProgress.Visibility = System.Windows.Visibility.Hidden;
}
if (currentAlbumDisplayingPicture < AlbumList.Count - 1)
buttonNextAlbumPic.IsEnabled = true;
}));
infoCount++;
}
答案 0 :(得分:0)
在您的示例中,您正在使用方法调用
app.Get(AlbumList[currentAlbumSelectedIndex].Id + "/photos");
据我所知,您应该能够传递IDictionary<string, object>
作为第二个参数。在那里定义“偏移”参数。
我在阅读&gt;部分的facebook api reference中阅读了偏移参数。寻呼。
希望这有帮助,马丁
答案 1 :(得分:0)
这不是一个问题,但它是一个限制,为了保持工作效率,它默认只返回25个结果,你可以要求尽可能多的结果。给它Offset
和limit
值
不是代码变得像这样
dynamic parameters = new ExpandoObject();
parameters.limit = 50;
parameters.offset = 0;
dynamic friends = app.Get("me/photos",parameters);