如何让儿童使用Google Drive API计算文件夹?

时间:2017-09-29 06:38:37

标签: c# google-api google-drive-api google-api-client google-drive-android-api

我正在使用Google Drive v3 API,但在获取给定文件夹中的元素数量方面遇到了一些麻烦。

现在我正在使用带有以下查询字符串的List API:

  父母的

'MyFolderId'

这是我正在使用的代码(.NET客户端库):

async Task<int> GetChildrenCountAsync(String folderId)
{
    FilesResource.ListRequest childrenRequest = Drive.Files.List();
    request.Fields = "files";
    request.Q = $"'{folderId}' in parents  and trashed = false";
    FileList children = await childrenRequest.ExecuteAsync();
    return children?.Files.Count() ?? 0;
}

我也在API的“fields”属性中使用“files”。通过这种方式,我得到了文件夹中所有文件的列表,我计算它们就是这样。

但问题是这种方法效率很低 - 我只想知道文件夹中子项的数量,没有别的。

另外,如果文件夹中的项目太多,这样我最终会执行多次查询以检索所有结果,而且我会浪费大量的数据和时间。

有没有办法查询文件夹的子项数

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

驱动器存储中的项目没有子计数器,因为驱动器api中的文件夹不能充当桌面中的常规文件夹。