1

我正在为 Google Drive 使用 C# API V2,但我似乎找不到 FilesResource.ListRequest.Fetch() 方法...我看到 FilesResource.ListRequest 接口与谷歌驱动器文档中描述的接口略有不同,所以我想已经对其进行了一些更改,但未反映在网络文档中。有人知道我现在应该如何执行查询吗?

这就是我要运行的:

public void SomeMethod(Settings settings)
{
    var provider = new NativeApplicationClient(GoogleAuthenticationServer.Description, settings.ApiKey, settings.ApiSecret);
    var auth = new OAuth2Authenticator<NativeApplicationClient>(provider, AuthProvider);
    _driveService = new Google.Apis.Drive.v2.DriveService(new BaseClientService.Initializer {Authenticator = auth});

    var request = _driveService.Files.List();
    request.Q = "mimeType='application/vnd.google-apps.folder' and trashed=false";

    request.Fetch() // <-- This method does not exist! :/
}

提前致谢!

4

3 回答 3

2

我刚刚使用最新版本的库尝试了您的代码,并且它可以正确构建。您使用的是最新版本的库吗?

FilesResource.ListRequest扩展Google.Apis.Requests.ClientServiceRequest<Google.Apis.Drive.v2.Data.FileList>定义Fetch()

https://code.google.com/p/google-api-dotnet-client/source/browse/Src/GoogleApis/Apis/Requests/ClientServiceRequest.cs#197

于 2013-05-15T04:43:04.660 回答
2

使用 Execute() 方法而不是 Fetch()

request.Execute()
于 2013-08-07T20:41:22.047 回答
0

目前的方法似乎是ExecuteAsync

var request = _driveService.Files.List();
request.Q = "mimeType='application/vnd.google-apps.folder' and trashed=false";

var result = await request.ExecuteAsync()

我不确定这是否仅适用于 Windows Store 和 Windows Phone 8.1 应用程序,或者该Execute方法是否已随处删除。

于 2015-03-28T16:14:51.047 回答