asp.net-mvc – 总是使用ASP.NET MVC AsyncController而不是Cont
发布时间:2020-12-16 07:27:21 所属栏目:asp.Net 来源:网络整理
导读:我们有一系列ASP.NET MVC控制器,它们都继承自单个基本控制器(继承自Controller类).我们现在正在考虑创建一些异步操作,并且想知道如果我们只是将基本控制器更改为继承自AsyncController而不是Controller(意味着我们所有的控制器都将继承自AsyncController),我
我们有一系列ASP.NET MVC控制器,它们都继承自单个基本控制器(继承自Controller类).我们现在正在考虑创建一些异步操作,并且想知道如果我们只是将基本控制器更改为继承自AsyncController而不是Controller(意味着我们所有的控制器都将继承自AsyncController),我们是否会遇到任何麻烦.
解决方法
杰斯,
在我看来,当你遵循以下约定时,asynch功能只会被调用,你不会受到伤害: public class PortalController : AsyncController { public void NewsAsync(string city) { AsyncManager.OutstandingOperations.Increment(); NewsService newsService = new NewsService(); newsService.GetHeadlinesCompleted += (sender,e) => { AsyncManager.Parameters["headlines"] = e.Value; AsyncManager.OutstandingOperations.Decrement(); }; newsService.GetHeadlinesAsync(city); } public ActionResult NewsCompleted(string[] headlines) { return View("News",new ViewStringModel { NewsHeadlines = headlines }); } } 惯例是在命名中添加News * Async *和News * Completed *部分. 看到: async controllers in asp.net mvc 2 观察控制器类现在派生自AsyncController而不是Controller.此外,新闻动作方法已被拆分为名为NewsAsync和NewsCompleted的方法,这些方法与异步页面中的Begin和End方法类似.逻辑上,控制器仍然公开名为News的单个操作方法.但在物理上,方法实现已经使用整个.NET框架中使用的异步模式的变体进行了分解. 如果您未在继承的控制器代码中更改任何内容,则不会启动异步激活.但是,正如罗伯特上面所说的那样(或者下面可能是:-)),你可以根据需要来装饰行动,以保持意图清晰,但是,我个人认为会议应该清楚地表明这一点. 当然值得辩论. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 通过asp.net 4.0中的“EnableViewState”和“ViewStateMode
- asp.net – 嵌套的用户控件的控件为null
- asp.net – 未捕获错误:在初始化之前无法在弹出窗口上调用
- asp.net-mvc – ASP.Net MVC“Magic Strings” – 可以避免
- ASP.NET – 如何在User Control中使用Response.Redirect()?
- 什么是<%=或<%:在ASP.NET中调用?
- ASP.NET中读取XML文件信息的4种方法与示例代码
- asp.net-mvc – S#arp架构与直接IOC NHibernate MVC
- Tensorflow Mnist数据集
- asp.net-mvc – ASP.Net MVC有一个Action渲染另一个Action
推荐文章
站长推荐
- 你在.NET中最喜欢的功能是什么?
- asp.net – 您使用什么工具来提高编码效率和整体
- asp.net-mvc-3 – 使用Ajax.BeginForm工作的mvc
- asp.net – 如何将AD身份验证SSO与现有的Forms身
- asp.net-mvc-3 – 如何判断我的动作是否被Render
- ASP.NET MVC中的runat =“server”标签的状态是什
- asp.net-mvc-3 – MVC:为此对象定义的无参数构造
- ASP.NET Core MVC base64映像到IFormFile
- asp.net-mvc – ajax链接被误处理
- asp.net-mvc-3 – 当用户需要再次登录时,Ajax.Ac
热点阅读