我正在使用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”。通过这种方式,我得到了文件夹中所有文件的列表,我计算它们就是这样。
但问题是这种方法效率很低 - 我只想知道文件夹中子项的数量,没有别的。
另外,如果文件夹中的项目太多,这样我最终会执行多次查询以检索所有结果,而且我会浪费大量的数据和时间。
有没有办法查询文件夹的子项数?
感谢您的帮助!
答案 0 :(得分:0)
驱动器存储中的项目没有子计数器,因为驱动器api中的文件夹不能充当桌面中的常规文件夹。