谷歌驱动器连接服务在C#

问题描述:

我在vb.net中创建一个应用程序,我使用谷歌驱动器API。现在,我想把它转换成C#中,我使用的转换程序,我发现在连接服务的错误(这是第二次,当我在我的应用程序使用C#) 下面是代码谷歌驱动器连接服务在C#

private void CreateService() 
    { 
     // change le mot de passe 
     dynamic ClientId = "*************"; 
     dynamic ClientSecret = "****************"; 
     // ClientId et clientSecret sont deux èléments fourni lors du generation d'un projet dans la plateform de google 
     UserCredential MyUserCredential = GoogleWebAuthorizationBroker.AuthorizeAsync(new ClientSecrets 
     { ClientId = ClientId, ClientSecret = ClientSecret },{ DriveService.Scope.Drive }, "user", CancellationToken.None).Result; 
     Service = new DriveService(new BaseClientService.Initializer 
     {HttpClientInitializer = MyUserCredential});} 

错误在该指令

{ DriveService.Scope.Drive }, "user", CancellationToken.None).Result; 

他不能接受{},也导致假

AuthorizeAsync函数需要为scope参数数组定义。我试用了Google Drive Nuget包Google.Api.Drive.v1。它没有定义范围DriveService.Scope.Drive,所以我将其更改为DriveService.Scope.DriveFile。如果你使用的是不同版本的Nuget Package,你可能不需要改变它。

这是我改变代码:

private void CreateService() 
    { 
     // change le mot de passe 
     dynamic ClientId = "*************"; 
     dynamic ClientSecret = "****************"; 

     // ClientId et clientSecret sont deux èléments fourni lors du generation d'un projet dans la plateform de google 
     UserCredential MyUserCredential = GoogleWebAuthorizationBroker.AuthorizeAsync(
      new ClientSecrets 
      { 
       ClientId = ClientId, 
       ClientSecret = ClientSecret 
      }, 
      new[] { DriveService.Scope.DriveFile }, 
      "user", 
      CancellationToken.None).Result; 

     Service = new DriveService(new BaseClientService.Initializer 
     { 
      HttpClientInitializer = MyUserCredential 
     }); 
    } 
+0

感谢你的帮助,它的工作原理 –