获取按更新时间排序的一个驱动器文件夹中的文件

时间:2015-04-07 07:14:35

标签: c# windows-phone-8.1 onedrive

我有一个应用程序,允许用户从One Drive中的特定文件夹中选择应用程序备份。

我想只显示按文件Updated Time(DESC)排序的此文件夹中的10个文件,我已经找到了如何通过将limit=10附加到查询路径来限制文件。

我正在使用Nuget中的 Live SDK ver 5.6.1 包。

LiveConnectClient client = new LiveConnectClient(session);
var result = await client.GetAsync(string.Format("{0}/files?limit=10", folderId));

但无法找到如何按Updated Time排序。

2 个答案:

答案 0 :(得分:2)

我不确定我们是否使用相同版本的REST API,但http://onedrive.github.io/index.htm中记录的那个(使用参数的美元符号)使用 $ orderby 。例如,

https://api.onedrive.com/v1.0/drive/items/[FOLDER ID]/children?$orderby=lastModifiedDateTime%20desc

但是,如果您遇到旧的Live SDK,根据https://msdn.microsoft.com/en-us/library/hh826531.aspx的文档,您应该可以使用

FOLDER_ID/files?sort_by=updated&sort_order=descending

这正是克林特所建议的,所以如果这对您不起作用,您可能需要考虑更新到更新的API。我可以确认排序肯定在那里工作。

答案 1 :(得分:1)

我还没试过这个但是......

var result = await client.GetAsync(string.Format("{0}/files?limit=10&sort_by=updated", folderId));