C# 使用OAuth2.0令牌。访问GData的凭据

C# 使用OAuth2.0令牌。访问GData的凭据,c#,google-api,google-apps,google-api-dotnet-client,C#,Google Api,Google Apps,Google Api Dotnet Client,我需要一些帮助-我仍在使用目录API对新的Google Admin SDK绞尽脑汁。到目前为止,我能够创建/删除用户,创建/删除别名。我已经授权了我需要的范围等 我的问题是如何使用下面的现有代码来使用GData库?我需要使用CreateSendAs函数,但它使用了另一组不同于目录API的包含。我是否必须将Auth2.0令牌设置为某个值,以便使用旧的GData调用 我用于目录API: 这是我需要用于CreateSendAs函数的C代码 我不确定下面的方法有多正确,但这对我来说是有效的。使用服务凭据

我需要一些帮助-我仍在使用目录API对新的Google Admin SDK绞尽脑汁。到目前为止,我能够创建/删除用户,创建/删除别名。我已经授权了我需要的范围等

我的问题是如何使用下面的现有代码来使用GData库?我需要使用CreateSendAs函数,但它使用了另一组不同于目录API的包含。我是否必须将Auth2.0令牌设置为某个值,以便使用旧的GData调用

我用于目录API:

这是我需要用于CreateSendAs函数的C代码


我不确定下面的方法有多正确,但这对我来说是有效的。使用服务凭据令牌,您可以访问GoogleMailSettings服务,如下所示

bool success =  credential.RequestAccessTokenAsync(System.Threading.CancellationToken.None).Result;

OAuth2Parameters parameter = new OAuth2Parameters()
{
     AccessToken = credential.Token.AccessToken
};

GOAuth2RequestFactory requestFactory = new GOAuth2RequestFactory("apps","your-apps", parameter);
GoogleMailSettingsService service = new GoogleMailSettingsService("yourdomain", "your-apps");
service.RequestFactory = requestFactory;
service.CreateSendAs("liz", "Sales", "sales@example.com", "", "true");

有人有什么建议吗?嗨,你解决过这个问题吗?我是这样解决的:谢谢你的帮助,但是没有用。我可以从凭据设置AccessToken,但无法设置。我收到以下错误:值不能为null。参数名称:刷新\u令牌
using Google.GData.Apps;
using Google.GData.Apps.GoogleMailSettings;
using Google.GData.Client;
using Google.GData.Extensions;

GoogleMailSettingsService service = new GoogleMailSettingsService("yourdomain", "your-apps");

service.setUserCredentials("adminUsername", "adminPassword");
service.CreateSendAs("liz", "Sales", "sales@example.com", "", "true");
bool success =  credential.RequestAccessTokenAsync(System.Threading.CancellationToken.None).Result;

OAuth2Parameters parameter = new OAuth2Parameters()
{
     AccessToken = credential.Token.AccessToken
};

GOAuth2RequestFactory requestFactory = new GOAuth2RequestFactory("apps","your-apps", parameter);
GoogleMailSettingsService service = new GoogleMailSettingsService("yourdomain", "your-apps");
service.RequestFactory = requestFactory;
service.CreateSendAs("liz", "Sales", "sales@example.com", "", "true");