2016-11-12 93 views
0

我已经使用Dropbox API安装了我的第一个小型演示应用程序,并且无法看到App文件夹中任何子文件夹的内容。在设置选项卡上,我看到: 权限类型:应用程序文件夹(此应用程序仅对其文件夹中的文件具有读取/写入权限)。我可以访问Dropbox App文件夹中子文件夹的内容

我的文件夹结构如下所示:

  • /应用/ MyAppFolderName /资料夹/文件夹2 /文件3
  • /应用/ MyAppFolderName /资料夹/文件2
  • /应用/ MyAppFolderName /文件1

我的代码看起来就像C#教程没有任何修改:

async Task ListRootFolder(DropboxClient dbx) 
{ 
    var list = await dbx.Files.ListFolderAsync(string.Empty); 

    // show folders then files 
    foreach (var item in list.Entries.Where(i => i.IsFolder)) 
    { 
     Console.WriteLine("D {0}/", item.Name); 
    } 

    foreach (var item in list.Entries.Where(i => i.IsFile)) 
    { 
     Console.WriteLine("F{0,8} {1}", item.AsFile.Size, item.Name); 
    } 
} 

它只打印出File1和Folder1;它永远不会到达File2或Folder2(也不会扩展名为File3)。

我误解了App文件夹权限的含义(因为它不允许访问子文件夹),还是我期望调用另一部分API来打开子文件夹?在完成list.Entries的第一次迭代后,我试图使用ListFolderContinueAsync(list.Cursor)方法,但它只是返回一个空的枚举器。

回答

0

如果传递的子文件夹名称为ListFolderAsync方法您可以访问子文件夹中的内容:

var list = await dbx.Files.ListFolderAsync(@"/Folder1/Folder2"); 

名称必须以“/”为前缀。

相关问题