Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net MVC 3&x2B;电传栅格_.net_Asp.net Mvc 3_Telerik Grid - Fatal编程技术网

.net MVC 3&x2B;电传栅格

.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

我的页面上有telerik网格。但它工作不正常。问题:当我点击按钮编辑调用方法按钮的选择。 我的网格视图

@(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");
            })