如何使用“ KeepRevisionForever”属性保留所有文件版本

时间:2018-06-19 14:33:24

标签: c# google-drive-api google-apis-explorer

我最近将文档以C#加载到云端硬盘中,但是不知道KeepRevisionForever属性。现在,我正在尝试上载文档的较新版本,我正在尝试将此属性设置为true,但看起来它只会保留该属性以用于最新更新。即,我最多可以上传版本5,但仅为版本4设置了KeepRevisionForever属性,而不是版本1-3。API可以允许为所有更新保留版本吗?

下面是完成此操作的代码块:

Google.Apis.Drive.v3.Data.File fileUpdate = new Google.Apis.Drive.v3.Data.File
{
    Name = doc.Name + "." + doc.ApplicationExtension
    , ModifiedTime = doc.DateModified.ToUniversalTime()
};

var update = aobjservice.Files.Update(fileUpdate, doc.GoogleObjectId, docUploadStream, doc.mimetype);
update.KeepRevisionForever = true;
update.Fields = "*";

var task = update.Upload();
  

更新:该文件最多包含34个以前的版本,以及当前版本(35),并且我注意到较旧的版本会检查此属性。如果我继续更新此文件,它将为当前版本的3个版本的文件继续更新此属性。下面是版本号,以及是否已为该版本选中“永久保留版本”:

     
      
  1.   
  2.   
  3.   
  4.   
  5.   

1 个答案:

答案 0 :(得分:1)

根据Manage Revisions,如果您不希望Drive API自动清除旧版本,只需将keepRevisionForever设置为true:

  

Google云端硬盘会自动清除(或“删除”)旧版本   为了优化磁盘使用率。为了防止这种情况的发生,您可以   将布尔值标志keepRevisionForever设置为true以标记修订   您不希望云端硬盘清除。