如何将google doc复制到google驱动器服务中的另一个文件夹

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

我有一个类,可复制google doc模板文件,然后将占位符与数据合并。问题是它在与原始模板文件相同的文件夹中创建副本,而我找不到将其复制到另一个文件夹的方法。

说我在Google云端硬盘中具有类似的结构。

Main
    TemplateFiles
        MainTemplateDoc
    Contracts
        CopyOfMainTemplateDocAfterBeingMerged

您可以看到,CopyOfMainTemplateDocAfterBeingMerged文档不会位于原始模板所在的TemplateFiles文件夹中,而是复制到Contracts文件夹中。

创建副本后是否可以使用Google Drive v2服务移动文件?我正在使用.net Google.Apis.Drive.v2 nuget包。这是我到目前为止创建副本的代码。

private string CopyDocument(string documentId, string title)
{
    var newFile = new File { Title = title };
    var documentCopyFile = driveService.Files.Copy(newFile, documentId).Execute();
    return documentCopyFile.Id;
}
google-api google-drive-api
1个回答
0
投票
  • 您正在使用Drive API v2。
  • 您要将文件复制到Contracts的文件夹。
  • 您已经可以使用Drive API。

如果我的理解正确,那么这个答案如何?请认为这只是几个可能的答案之一。

在这个答案中,我想提出以下修改。

发件人:

var newFile = new File { Title = title };

收件人:

var newFile = new File {
    Title = title,
    Parents = new List<ParentReference> {new ParentReference {Id = parentId}}
};

var newFile = new File() {
    Title = title
};
newFile.Parents = new List<ParentReference>() {new ParentReference() {Id = parentId}};

var newFile = new File();
newFile.Title = title;
newFile.Parents = new List<ParentReference>() {new ParentReference() {Id = parentId}};
  • [parentId是文件夹Contracts的文件夹ID。

注意:

  • 如果要使用Drive API v3,请使用new List<string> {folderId}而不是new List<ParentReference> {new ParentReference {Id = folderId}}

参考:

如果我误解了你的问题,而这不是你想要的方向,我深表歉意。

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