这是我的行动:
[HttpPost, ValidateAntiForgeryToken]
public ActionResult GetData()
{
//get data from DB and populate model with data
return View("Data", model);
}
View 是:
@model UI.Models.DataModel
@{
var grid = new WebGrid(Model.listTest,
null,
defaultSort: "Id",
rowsPerPage: 25,
canPage: true,
canSort: true
);
}
@if (Model.listTest != null)
{
@grid.GetHtml()
}
在这种特殊情况下,如何在使用 angularjs(而不是 Ajax)调用操作后填充 gridview 而无需加载整个页面?
我没有编写一行代码来使其异步,因为我对 AngularJS 一无所知。这将是我学习它的第一步。
更新:
- 我知道如何在 Ajax 中完成此操作,我想学习 AngularJS。只在 Ajax 中做这样的事情更好吗?或者 AngularJS 比 Ajax 更好?
最佳答案
如果您希望对 Controller 进行异步 API 调用,我强烈建议您查看 ASP.NET 网站,其中专门包含有关此主题的信息。
在我链接到一篇文章之前,最简单的答案是,您需要拆分 Controller 操作,以将一个操作专门用于 View ,而另一个操作则异步返回数据。
以下是回答您问题的文章的链接:
http://www.asp.net/mvc/overview/performance/using-asynchronous-methods-in-aspnet-mvc-4
关于javascript - 从 ASP.NET MVC 中的 AngularJS Controller 加载数据,无需加载整个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33895818/