私はプレゼンテーションに取り組んでいましたが、適切なコンテキストで ActionResult が返されていないため、次は失敗するはずだと考えました。VS で負荷テストを行ったところ、エラーは発生しませんでした。私はそれをデバッグし、スレッドを切り替えていることを知っています。したがって、それは合法的なコードのようです。
ASP.NET は、クライアント アプリのように、それがどのコンテキストまたはスレッド上にあるかを気にしませんか? もしそうなら、AspNetSynchronizationContext はどのような目的を提供しますか? アクション自体に ConfigureAwait を入れるのは適切ではありません。それについて何かが間違っているようです。誰でも説明できますか?
public async Task<ActionResult> AsyncWithBackendTest()
{
var result = await BackendCall().ConfigureAwait(false);
var server = HttpContext.Server;
HttpContext.Cache["hello"] = "world";
return Content(result);
}