Tôi đã làm việc trên một bài thuyết trình và nghĩ rằng những điều sau đây sẽ thất bại vì ActionResult không được trả về đúng ngữ cảnh. Tôi đã tải thử nghiệm nó với VS và không có lỗi. Tôi đã gỡ lỗi nó và biết rằng nó đang chuyển đổi chủ đề. Vì vậy, nó có vẻ như nó là mã legit.Gọi ConfigureAwait từ một ASP.NET MVC Action
ASP.NET không quan tâm đến ngữ cảnh hoặc chủ đề nào giống như ứng dụng khách? Nếu vậy, mục đích của AspNetSynchronizationContext là gì? Tôi không cảm thấy đúng khi đặt một ConfigureAwait trong chính hành động đó. Có điều gì đó không ổn về nó. Bất cứ ai có thể giải thích?
public async Task<ActionResult> AsyncWithBackendTest()
{
var result = await BackendCall().ConfigureAwait(false);
var server = HttpContext.Server;
HttpContext.Cache["hello"] = "world";
return Content(result);
}
Câu trả lời đúng sẽ cho biết lý do tại sao thực hiện việc này hoàn toàn OK hoặc nên đưa ra ví dụ về những gì không thành công khi bạn thực hiện việc này.Ruột của tôi nói với tôi rằng tôi không nên, nhưng tôi muốn có sự thật để ủng hộ tôi. –