将G Suite驱动器的文件和文件夹从一个域复制到另一个域。

问题描述 投票:0回答:1

我想从G Suite用户的驱动器中查询所有文件和文件夹的列表,并将这些文件复制到另一个域用户。

但我无法将这些文件复制到另一个域,我查阅了一些关于共享驱动器文件的参考资料,但不明白如何授予权限,使目标域可以复制文件。

如果有人能帮我解决这个问题,我将会很高兴。

public void Execute(){

    string strFileId = "";
    //get list of all files from source domain(eg. [email protected])
    IList<Google.Apis.Drive.v3.Data.File> fileList = service.getDriveFiles();

    Google.Apis.Drive.v3.Data.File title = new Google.Apis.Drive.v3.Data.File();
    //loop files list
    foreach (var fileItem in fileList)
    {
       strFileId = fileItem.Id;
       title.Name = fileItem.Name;
      //copy files to destination domain(eg. [email protected]) with file ID
       service.Files.Copy(title, strFileId).Execute();
    }
}


private IList<Google.Apis.Drive.v3.Data.File> getDriveFiles()
{
   // Define parameters of request.
   Google.Apis.Drive.v3.FilesResource.ListRequest FileListRequest = source_drive_service.Files.List();
   // get all files
   FileListRequest.Fields = "nextPageToken, files(*)";

   IList<Google.Apis.Drive.v3.Data.File> files = FileListRequest.Execute().Files;
   return files;
}
c# google-drive-api
1个回答
0
投票

有很多方法可以解决这个问题,但一个简单的方法是。

  1. 通过Drive API获取所有文件的列表(包括Drive中的文件夹) 通过使用... ... Files.list().
  2. 对于每个文件,你可以 易主 给新的所有者(例如B域的管理员)。

注意:当一个文件被转移时,前主人的角色会被降级为写手。 当文件被转移时,前主人的角色将被降级为写手。

© www.soinside.com 2019 - 2024. All rights reserved.