我有一堆需要异步调用的 web api 调用。我从未使用过aysnc。
我创建了一个简单的测试控制台程序,大致如下:
class Program
{
static void Main(string[] args)
{
ClassOne xx = new ClassOne();
var v1 = xx.DummyTask();
}
}
类定义为:
namespace GHTest.classes
{
public class ClassOne
{
GitHubClient client;
public ClassOne()
{
client = new GitHubClient(new ProductHeaderValue("OMHSite"));
}
public async Task<string> DummyTask()
{
Task<Repository> task = client.Repository.Get("openEHR", "CKM-mirror");
task.Wait();
var myResult = task.Result;
return myResult.FullName;
}
}
}
Visual Studio 声明我应该使用“await”运算符,因为当前此代码将同步运行。await 运算符去哪儿了?
此外,如果以下语句引发异常,我如何在任务中捕获它
client.Repository.Get("openEHR", "CKM-mirror");