mvc中的异步页面加载
Posted
技术标签:
【中文标题】mvc中的异步页面加载【英文标题】:Async page load in mvc 【发布时间】:2015-01-17 19:52:19 【问题描述】:我是mvc应用程序,有一些视图,视图中某些部分的数据在服务器端需要时间,所以我需要先加载视图的另一部分,当进程完成时,将加载剩余部分。
为此,我创建了一个局部视图,局部视图操作是异步的并返回一个任务。但在 Mvc 5 中,我不能在视图中使用 await 关键字。我为那个 mvc 6 解决了这个问题。
所以现在我正在使用 ajax 调用加载部分视图。但是我可以不用ajax调用吗?或者使用 c# 异步编程功能。
【问题讨论】:
好吧,如何使用Task.Run
在线程池上使用异步任务编译控制器中的部分视图,然后返回html
【参考方案1】:
您必须在***操作中的控制器中执行异步操作 - 在 ASP.Net MVC5 之前的版本中,视图和子操作都不能是异步的。
或者等到 MVC6 准备好,或者如果你现在允许使用 MVC6 - vNext。
【讨论】:
是的,alexei 我研究了同样的问题,但我没有找到任何解决子动作可以异步的解决方案。当然,我们需要等待 vnext 稳定版。谢谢以上是关于mvc中的异步页面加载的主要内容,如果未能解决你的问题,请参考以下文章
Spring MVC:如何在每个 Thymeleaf 页面上重新加载数据库中的登录用户信息?
使用 asp.net MVC 中的参数将 javascript 中的页面重新加载到特定控制器的操作方法