代码之家  ›  专栏  ›  技术社区  ›  Dave Mateer

Telerik Radgrid-LINQ和更新

  •  1
  • Dave Mateer  · 技术社区  · 15 年前

    telerik的radgrid,基于它们的示例 http://demos.telerik.com/aspnet-ajax/grid/examples/dataediting/programaticlinqupdates/defaultcs.aspx

    问题:我可以插入和删除,但是更新不起作用。未捕获错误。数据不会改变。

    从下面的代码来看,telerik grid在幕后做了一些功夫来连接东西。我看不到数据库接收到任何更新语句。

    问题:我有什么明显的遗漏吗?

    protected void RadGrid1_UpdateCommand(object source, GridCommandEventArgs e)
            {
                var editableItem = ((GridEditableItem) e.Item);
                var raceId = (Guid) editableItem.GetDataKeyValue("RaceID");
    
                //retrive entity form the Db
                var race = DbContext.races.Where(n => n.raceid == raceId).FirstOrDefault();
                if (race != null)
                {
                    //update entity's state
                    editableItem.UpdateValues(race);
    
                    try
                    {
                        //submit chanages to Db
                        DbContext.SubmitChanges();
                    }
                    catch (Exception f)
                    {
                        ShowErrorMessage(f);
                    }
                }
            }
    

    我想我得回到他们的例子中去。得到他们的数据库……从这个角度进攻。

    干杯!

    1 回复  |  直到 15 年前
        1
  •  1
  •   Serapth    15 年前

    更新后重新绑定。正在尝试添加

    RadGrid1.DataSource = null;
    RadGrid1.Rebind();
    

    在你打电话给 DbContext.SubmitChanges(); 调用,假设您已经实现了NeedDataSource()。

    推荐文章