Linq更新现有记录

时间:2011-11-13 16:49:35

标签: c# linq

我需要更新linq中的现有记录,如果记录存在,则添加新记录。 saveChanges()会为两者工作吗?如果是,如何区分更新和插入。 提前谢谢。

2 个答案:

答案 0 :(得分:1)

SaveChanges()执行自上次调用以来对数据库所做的所有更改。这包括:

  • 向集合添加新项目
  • 从集合中删除项目
  • 更改属性

因此,您要么将记录添加到集合中,要么获取现有记录并修改其属性。没有通用的方法来做到这一点。执行更改后,请致电SaveChanges()保存更改。

答案 1 :(得分:0)

Linq一般是查询而不是修改(它代表语言集成查询) - 理想情况下,您不希望创建任何副作用。更新和插入的不同之处在于,对于更新,您通常需要查询现有记录。更新 - 对于插入,您只需添加它。是的SaveChanges()将适用于两者,因为它提交您的更改并添加到基础数据存储。

你的问题非常广泛 - 没有特定的代码,你很难给出更详细的答案。