将文件上传到我的移动应用程序的appData文件夹然后下载后,如果您查看Google.Apis.Drive.v3.Data.File属性,则所有属性都为null,但Id和Name属性除外。我需要知道服务器修改的DateTime,也许是最后一个客户端修改的DateTime,因为它可以从其他设备上载到Google Drive应用程序文件夹。如何获取这些属性或在上传时进行设置,以便在下一次下载时可以与当前客户端文件进行比较?
我已经包含了我正在使用的上传代码,该代码非常适合上传。我尝试在代码的fileMetadata部分中将ModifiedTime设置为DateTime.UtcNow,但是然后request.ResponseBody返回为空。
var fileMetadata = new Google.Apis.Drive.v3.Data.File()
{
Name = filename,
Parents = new List<string>()
{
"appDataFolder"
}
};
FilesResource.CreateMediaUpload request;
using (var stream = fileContent.AsMemoryStream())
{
request = service.Files.Create(fileMetadata, stream, MimeTypeLookup.GetMimeType(filename));
request.Fields = "id";
request.Upload();
}
var file = request.ResponseBody;
Console.WriteLine("File ID: " + file.Id);
我希望看到一个request.ResponseBody返回Google.Apis.Drive.v3.Data.File,就像上传时未设置任何日期一样。谁能解决这个问题?我需要使用DateTime,以便可以与当前本地文件进行比较。
史蒂夫
答案 0 :(得分:2)
您已指定只需要id字段
request.Fields = "id";
尝试
request.Fields = "*";
这会将所有字段返回给您。您可以使用它,但是您只想返回所需的数据。您可以在这里https://developers.google.com/drive/api/v3/performance#partial-response
了解更多信息