更新后的Asp.Net MVC Telerik网格事件

时间:2014-06-20 10:34:36

标签: c# asp.net-mvc razor telerik telerik-grid

我使用telerik在Asp.Net MVC中创建了一个项目。 我正在使用带有可编辑的telerik网格。 我插入一条新记录,在此之后更新此行,然后将重新创建此行。必须更新。

样品 添加新的 - >


|计算机|


使用COMPUTER2更新此信息 - >


|计算机|


| COMPUTER2 |


这是我的.cshtml代码

@(Html.Kendo().Grid<Telerik_Test_MVC.Models.CIHAZ_TUR_ViewModel>()
.Name("Grid")
.Columns(columns =>
{
    columns.Bound(p => p.ID).HeaderTemplate("ID").Width(36);
    columns.Bound(p => p.TUR_ADI).HeaderTemplate("CİHAZ TüR ADI").Width(200);
    columns.Command(command => { command.Edit(); command.Destroy(); }).Width(160);
})
.ToolBar(toolbar => toolbar.Create())
.Editable(e => e.Mode(GridEditMode.PopUp))
.Sortable()
 .Resizable(re => re.Columns(true))
 .Groupable()
.DataSource(d => d
    .Ajax()
    .Model(m => m.Id(p => p.ID))
        .Read(u => u.Action("Tur_Read", "Home"))
        .Create(c => c.Action("Tur_Create", "Home"))
        .Destroy(s => s.Action("Tur_Destroy", "Home"))
        .Update(u => u.Action("Tur_Update", "Home"))
)

这些是创建和更新方法:

[AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Tur_Create([DataSourceRequest] DataSourceRequest request, CIHAZ_TUR_ViewModel product)
    {
        if (product != null && ModelState.IsValid)
        {
            CIHAZ_TUR_DataModel kd = new CIHAZ_TUR_DataModel();
            return Json(kd.Insert(product));
        }
        return Json(new[] { product }.ToDataSourceResult(request, ModelState));
    }

    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Tur_Update([DataSourceRequest] DataSourceRequest request, CIHAZ_TUR_ViewModel product)
    {
        if (product != null && ModelState.IsValid)
        {
            CIHAZ_TUR_DataModel kd = new CIHAZ_TUR_DataModel();
            return Json(kd.Update(product, product.ID));
        }
        return Json(new[] { product }.ToDataSourceResult(request, ModelState));
    }

1 个答案:

答案 0 :(得分:0)

我通过编辑来解决了这个问题:

product.ID = kd.Insert(product);