非同期で呼び出す必要がある 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");