【发布时间】:2016-09-05 08:43:33
【问题描述】:
我想在 Kendo Grid 中向用户展示。这是我的控制器:
public class UserController : Controller
{
public ActionResult Index()
{
return View();
}
public ActionResult Users_Read([DataSourceRequest]DataSourceRequest request)
{
using (var rahatWeb = new RahatWebEntities())
{
IQueryable<User> users = rahatWeb.Users;
DataSourceResult result = users.ToDataSourceResult(request);
return Json(result, JsonRequestBehavior.AllowGet);
}
}
}
这是我的观点:
@{
ViewBag.Title = "";
Layout = "~/Views/Shared/_Layout.cshtml";
}
@(Html.Kendo().Grid<RahatWeb.Models.User>()
.Name("grid")
.Columns(columns =>
{
columns.Bound(user => user.Id);
columns.Bound(user => user.FirstName);
columns.Bound(user => user.LastName);
})
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("Users_Read", "User"))
)
.Pageable()
.Sortable()
)
问题是网格中没有显示数据。我该如何解决这个问题?
【问题讨论】:
-
你在敲控制器,控制器炸了吗?是返回数据吗?它是否以网格预期的格式返回数据?你试过调试什么吗?
-
是的,我手动请求了 Users_Read 操作,并且返回了 JSON 结果数据。当我在 Users_Read Action 上设置断点并请求 Index Action 时,Grid 会正常显示,但其中没有任何数据。
-
您的布局中是否包含
kendo.aspnetmvc.min.js?此外,在浏览器中点击F12并检查控制台是否有任何客户端错误。 -
@mrmashal,非常感谢。你是对的。问题是这样的。谢谢。
-
@MohsenJafari 很高兴听到这个消息!我会将我的评论作为答案发布,以便您可以将此问题标记为已接受:)
标签: ajax asp.net-mvc kendo-ui grid