Wywoływanie ConfigureAwait z akcji ASP.NET MVC
Pracowałem nad prezentacją i uważałem, że poniższe kroki powinny zakończyć się niepowodzeniem, ponieważ ActionResult nie jest zwracany we właściwym kontekście. Załadowałem testowałem go z VS i nie miałem błędów. Zdebugowałem to i wiem, że przełącza wątki. Wygląda na to, że jest to legalny kod.
Czy ASP.NET nie dba o to, w jakim kontekście lub wątku znajduje się aplikacja kliencka? Jeśli tak, jaki cel zapewnia AspNetSynchronizationContext? Nie czuję się dobrze wkładając ConfigureAwait w samą akcję. Coś się z tym nie zgadza. Czy ktoś może to wyjaśnić?
<code> public async Task<ActionResult> AsyncWithBackendTest() { var result = await BackendCall().ConfigureAwait(false); var server = HttpContext.Server; HttpContext.Cache["hello"] = "world"; return Content(result); } </code>