Web Api HttpClientを使用して、次の非同期コントローラに関するすべてのフィードバックを送信したいだけです。これは非常に汚れているように見えますが、それを清潔にする方法はありますか?誰もが複数の非同期タスクを連鎖させる良いラッパーを持っていますか?C#Web Api GetAsync + MVC 3.0非同期コントローラ
public class HomeController : AsyncController
{
public void IndexAsync()
{
var uri = "http://localhost:3018/service";
var httpClient = new HttpClient(uri);
AsyncManager.OutstandingOperations.Increment(2);
httpClient.GetAsync(uri).ContinueWith(r =>
{
r.Result.Content.ReadAsAsync<List<string>>().ContinueWith(b =>
{
AsyncManager.Parameters["items"] = b.Result;
AsyncManager.OutstandingOperations.Decrement();
});
AsyncManager.OutstandingOperations.Decrement();
});
}
public ActionResult IndexCompleted(List<string> items)
{
return View(items);
}
}
誰かがアドバイスを持っている場合は、キーワードawaitを参照してください –