Async and await in MVC 4 Controller

后端 未结 3 635
梦谈多话
梦谈多话 2020-12-18 19:57

Every time I try to use the new Async and Await operators and return a collection of objects from a database I get an Invalid Operation

3条回答
  •  旧巷少年郎
    2020-12-18 20:39

    First of all, you cannot use asynchronous processing with child actions and I suppose this is what you are trying to do.

    Secondly, you are not doing any asynchronous processing here by spinning up another thread to execute your code with the below line of code:

    Task.Run(() => GetAllEnvironments());
    

    It will block a thread at the end of the day and you will have nothing but a context switch overhead. EF6 will have support for asynchronous processing. For asynchronous queries with pure ADO.NET, have a look:

    Asynchronous Database Calls With Task-based Asynchronous Programming Model (TAP) in ASP.NET MVC 4

提交回复
热议问题