代码之家  ›  专栏  ›  技术社区  ›  HAdes

如何清除LinqToSql中的更改?

  •  2
  • HAdes  · 技术社区  · 17 年前

    我的WPF应用程序中有一个组合框,它与我的视图模型中的对象列表数据绑定。当用户对所选对象进行更改,然后在保存前选择另一个项目时,我需要清除所做的更改。

    我也尝试过使用dataContext。刷新,但这也不起作用,因为数据库中不存在该对象,我是从SP手动创建的。

    2 回复  |  直到 17 年前
        1
  •  3
  •   HAdes    16 年前

    除了使用Marc使用DeleteOnSubmit(或DeleteAllOnSubmit)删除插入的方法外,以下操作实际上也会撤消任何更新:

    // clears any updates.  
    ChangeSet changes = dataContext.GetChangeSet();
    dataContext.Refresh(RefreshMode.OverwriteCurrentValues, changes.Updates);   
    
        2
  •  2
  •   Marc Gravell    17 年前

    您最好的选择可能是重新查询到单独的数据上下文中。你 能 使用以下命令否定插入(来自更改集) DeleteOnSubmit