.net MVC 3&x2B;电传栅格
我的页面上有telerik网格。但它工作不正常。问题:当我点击按钮编辑调用方法按钮的选择。 我的网格视图.net MVC 3&x2B;电传栅格,.net,asp.net-mvc-3,telerik-grid,.net,Asp.net Mvc 3,Telerik Grid,我的页面上有telerik网格。但它工作不正常。问题:当我点击按钮编辑调用方法按钮的选择。 我的网格视图 @(Html.Telerik().Grid(Model) .Name("Grid") .DataKeys(keys => keys.Add(c => c.CommandId)) .DataBinding(dataBinding => { dataBinding.Server().Upd
@(Html.Telerik().Grid(Model)
.Name("Grid")
.DataKeys(keys => keys.Add(c => c.CommandId))
.DataBinding(dataBinding =>
{
dataBinding.Server().Update("Update", "CommandEntity");
dataBinding.Server().Select("Print", "CommandEntity");
dataBinding.Server().Delete("Delete", "CommandEntity");
})
.Columns(columns =>
{
columns.Bound(o => o.Date).Format("{0:dd/MM/yyyy}").Width(100);
columns.Bound(o => o.Number).Width(40);
columns.Bound(o => o.Employees).Width(240);
columns.Bound(o => o.DayCount).Width(40);
columns.Bound(o => o.Destinations).Width(220);
columns.Bound(o => o.ShortTarget).Width(200);
columns.Bound(o => o.TypeAssignment).Width(90);
columns.Command(commands =>
{
commands.Edit().ButtonType(GridButtonType.Image);
commands.Delete().ButtonType(GridButtonType.Image);
commands.Select().ButtonType(GridButtonType.Image);
}).Width(100).Title("actions");
})
.Scrollable(scrolling =>
{
scrolling.Enabled(true);
scrolling.Height("500px");
})
.Editable(editing => editing.Mode(GridEditMode.PopUp))
.Sortable(sorting => sorting.Enabled(true))
.Pageable(paging =>
{
paging.Enabled(true);
paging.PageSize(15);
})
.Filterable(filtering => filtering.Enabled(true))
.Groupable(grouping => grouping.Enabled(true))
.Footer(true))
方法:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Delete(Guid id)
{
new DataManager().RemoveCommandEntity(id);
return RedirectToAction("Index", "CommandEntity");
}
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult Print(Guid id)
{
byte[] rep = Reports.ReportBuilder.CreateReport(id);
return File(rep, System.Net.Mime.MediaTypeNames.Application.Pdf);
}
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Update(CommandEntity obj)
{
new DataManager().UpdateCommand(obj);
HttpContext.Session["Entities"] = null;
return RedirectToAction("Index", "CommandEntity");
}
应该调用Update方法,但调用Print。虽然没有选择的方法,但一切都很好。
这里出了什么问题?我认为问题出在这里:
DataBinding(dataBinding =>
{
dataBinding.Server().Update("Update", "CommandEntity");
dataBinding.Server().Select("Print", "CommandEntity");
dataBinding.Server().Delete("Delete", "CommandEntity");
})
数据绑定应该用于Ajax或Web服务绑定。当您想要使用服务器绑定时,您只需绑定到模型,就根本不需要使用数据绑定方法
我认为您应该将这部分代码更改为:
DataBinding(dataBinding =>
{
dataBinding.Ajax().Update("Update", "CommandEntity");
dataBinding.Ajax().Select("Print", "CommandEntity");
dataBinding.Ajax().Delete("Delete", "CommandEntity");
})
或者,如果要通过服务器绑定填充网格,则:
DataBinding(dataBinding =>
{
dataBinding.Ajax().Update("Update", "CommandEntity");
dataBinding.Ajax().Delete("Delete", "CommandEntity");
})