Enc*_*ion 4 c# asp.net-mvc-4 kendo-ui kendo-grid
我正在使用Kendo UI Grid服务器端包装器并尝试从我的模型中加载一些数据.网格正在页面上呈现,但没有填充数据.我没有使用过这个网格,所以我觉得我只是错过了ClientTemplate的东西.我已经回顾了剑道文档,但还没有运气.
这是我的观点:
<div id="dependents">
<div id="grid">
@(Html.Kendo().Grid<Enrollment.Models.DependentModel>()
.Name("grid")
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("KendoGrid", "Dependents"))
.ServerOperation(false)
)
.Columns(columns =>
{
columns.Bound(d => d.MaskedSSN).ClientTemplate("<#: MaskedSSN #>").Title("SSN");
columns.Bound(d => d.FirstName).ClientTemplate("<#: FirstName #>").Title("First Name");
columns.Bound(d => d.LastName).ClientTemplate("<#: LastName #>").Title("Last Name");
columns.Bound(d => d.DateOfBirth).ClientTemplate("<#: DateOfBirth #>").Title("Date of Birth");
columns.Bound(d => d.Gender).ClientTemplate("<#: Gender #>").Title("Gender");
columns.Bound(d => d.DependentTypeId).ClientTemplate("<#: DependentTypeId #>").Title("Type");
})
.Pageable()
.Sortable()
.HtmlAttributes(new {style = "height: 400px;"})
)
</div>
Run Code Online (Sandbox Code Playgroud)
这是我的控制器:
[HttpGet]
public ActionResult KendoGrid([DataSourceRequest]DataSourceRequest request)
{
DataSourceResult result = UnitOfWork.Enrollment.Dependents.ToDataSourceResult(request,
model => new DependentModel
{
SSN = model.SSN,
FirstName = model.FirstName,
LastName = model.LastName,
DateOfBirth = model.DateOfBirth,
Gender = model.Gender,
DependentTypeId = model.DependentTypeId
});
return View(result);
}
Run Code Online (Sandbox Code Playgroud)
有人可以让我知道我错过了什么或我做错了什么?如果您需要更多信息,请告诉我.就像我说的那样,网格在页面上呈现所有正确的列标题,并且应该有一行但不存在数据.它只是说" 没有要显示的项目 ".
谢谢
(只是为了扩展你以前的答案)
网格在读取默认状态时实际执行帖子.运行fiddler时会看到这个.因此,通过使用Http.GET标记此操作,永远不会调用该操作.除非您已告知读取操作发送获取请求而不是发布请求.
尝试将控制器更改为:
public JsonResult KendoGrid([DataSourceRequest]DataSourceRequest request)
{
DataSourceResult result = UnitOfWork.Enrollment.Dependents.ToDataSourceResult(request,
model => new DependentModel
{
SSN = model.SSN,
FirstName = model.FirstName,
LastName = model.LastName,
DateOfBirth = model.DateOfBirth,
Gender = model.Gender,
DependentTypeId = model.DependentTypeId
});
return Json(result,JsonRequestBehavior.AllowGet);
}
Run Code Online (Sandbox Code Playgroud)
请注意我已删除了http动词.如果需要,您可以在之后再申请.
| 归档时间: |
|
| 查看次数: |
8976 次 |
| 最近记录: |