我想从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;
}
有很多方法可以解决这个问题,但一个简单的方法是。
Files.list()
.注意:当一个文件被转移时,前主人的角色会被降级为写手。 当文件被转移时,前主人的角色将被降级为写手。