gpt4 book ai didi

c# - 返回对象的方法能够等待任务

转载 作者:行者123 更新时间:2023-11-30 16:48:01 30 4
gpt4 key购买 nike

我有一个返回 DropboxClient 的方法,我需要等待一个方法才能获得创建此 DropboxClient 所需的 AccessToken >。我遇到问题的代码片段是:

OAuth2Response authUriComplete = 
await Dropbox.Api.DropboxOAuth2Helper.ProcessCodeFlowAsync(token,
options.ClientId, options.ClientSecret);

var dbx = new DropboxClient(authUriComplete.AccessToken);
return dbx;

所以我不知道如何让这个方法工作,我需要创建一个方法来返回 DropboxClient,我知道我可以返回任务然后在外部等待它方法,但这不是我需要的。

最佳答案

一旦您开始使用 async/await,您就需要在整个链中跟进它。所以你的方法应该看起来像

public async Task<DropboxClient> GetClient()
{
OAuth2Response authUriComplete =
await Dropbox.Api.DropboxOAuth2Helper.ProcessCodeFlowAsync(token, options.ClientId, options.ClientSecret);

return new DropboxClient(authUriComplete.AccessToken);
}

你会这样调用它:

var dbx = await GetClient();

如果你不想在那里不使用 await 你也可以这样做

var dbx = GetClient().Result;

关于c# - 返回对象的方法能够等待任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38608482/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com