如何获取Google云端硬盘文件夹层次结构?

时间:2016-12-23 17:06:09

标签: c# winforms google-drive-api

我想创建一个应用程序,可以直接从客户端桌面查​​看与他/她的谷歌驱动器存储相同的层次结构中的文件。但为此我必须获得该特定用户帐户的文件夹层次结构。在我的应用程序中,我试图在树视图中查看文件夹层次结构。以下是代码:

internal async Task<TreeView> SetTreeView(TreeNode node, string fileId, TreeView treeview1)
    {
        TreeNode t;
        if (node == null)
        {
            t = new TreeNode();
        }
        else
            t = node;

        FilesResource.GetRequest req = driveservice.Files.Get(fileId);
        var root = req.Execute();
        FilesResource.GetRequest get;
            await DriveV2.Authorize();
            var childrenIds = DriveV2.GetChildren(root.Id);


        for ( int i = 0; i < childrenIds.Count; i++)
            {
                get = driveservice.Files.Get(childrenIds[i]);
                var file = get.Execute();
            var n = t.Nodes.Add(file.Name);

            SetTreeView(n,childrenIds[i], treeview1);
            }
        treeview1.Nodes.Add(t);
        //doc.Save("file.xml");

        return treeview1;
    }

如果我错在任何一点,请纠正我,并建议一些其他实现,通过这些实现我可以在XML文件中存储层次结构(存储文件夹的ID)或直接进入树视图。

编辑:我编写的代码确实将文件夹添加到树视图中,但所有文件夹都在同一级别而不是分层格式。

0 个答案:

没有答案