asp.net 实现后台异步处理的方式


问题描述:

   刚刚开发的一个页面,使用的NET的MVC4.5框架,因为页面数据加载慢需要优化,页面上有8个请求,但是请求并没有什么相互依赖的关系。前端使用ajax异步,但是后台并没有按照异步程序处理。解决后台程序也是异步处理。

方案1:在控制器上添加注解

[SessionState(System.Web.SessionState.SessionStateBehavior.ReadOnly)]

优点: 该方法是对整个控制器的Session进行限制。只需要在最上面控制器添加即可,配合前台使用异步。

缺点:如果有方法需要使用Session,则无法使用。

方案2:使用异步控制器。 

注:在mvc的开发过程中,有时候我们会需要在action中调用异步方法,这个时候会需要做一些特殊处理。我们会使用到await和async。对应的controller也应该是async的。
在MVC4中直接可以使用await和async,而MVC3中需要继承AsyncController,才可以使用。 --------------------- 作者:zaichuanguanshui 来源:CSDN 原文:https://blog.csdn.net/zaichuanguanshui/article/details/54964052?utm_source=copy 

使用示例如上,async 和await 需要配合使用,效果和方案一相同。

优点:使用方便,可以直接设置到具体的Action上,不受Session的限制。

缺点:需要根据不同的Mvc版本进行选择。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM