ASP.net MVC4 AsyncController异步action无法异步执行?

来源:互联网 发布:windows ce最新版本 编辑:程序博客网 时间:2024/04/30 11:17

最新需要用到mvc4 的异步action,以实现页面ajax同时指定一个耗时查询。

使用了AsyncController。

参考文章:

http://www.oschina.net/question/565065_68409


public class DevController : AsyncController{        public Task<ActionResult> Article2(string name)        {            return Task.Factory.StartNew(() =>            {                string path = ControllerContext.HttpContext.Server.MapPath(string.Format(@"\articles\{0}.html", name));                using (StreamReader reader = new StreamReader(path))                {                    return reader.ReadToEnd();                }            }).ContinueWith<ActionResult>(task =>            {                return Content((string)task.Result);            });        }}



执行起来没有问题,但是实际中使用发现,几个ajax调用虽是同时发起请求,但是服务器段还是同步依次执行每个action。。。。


原来需要增加如下内容:

    [SessionState(SessionStateBehavior.ReadOnly)]
<pre name="code" class="csharp">public class DevController : AsyncController
{
。。。。。。。
}




0 0
原创粉丝点击