I checked the System.Web.Mvc.AsyncController in MVC 4.0, it has the comment "Provided for backward compatibility with ASP.NET MVC 3." does this mean there is a new implementation of async controller in MVC 4? what's the correct way in MVC 4.0 enable async a controller in order to put the I/O intense operations in other thread pool other than IIS request thread pool?
Starting from ASP.NET MVC 4, you can now use the System.Web.Mvc.Controller
class as the base class and leverage the TAP (Task-based Asynchronous Pattern):
public async Task<ViewResult> Index() {
return View(await GetThingsAsync());
}
Note that you don't have to use async
and await
keywords which come with C# 5.0 but they make asynchronous programming much, much easier and more maintainable.
Have a look at the following articles:
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With