当记录已经存在时,linq到sql插入

时间:2011-06-07 13:05:45

标签: c# linq linq-to-sql

我有一个对象,它有一个名为ObjectID的属性,映射到数据库中表的主键。

如果执行linq-to-sql插入并尝试使用数据库中已存在ObjectID的对象进行插入,会发生什么?

感谢。

1 个答案:

答案 0 :(得分:0)

测试后:
如果您尝试向datacontext插入新实体,即使primarykey值已经存在,它也会插入一个新实体with new ID

如果您尝试插入的实体是从同一个datacontext中提取的,那么它将抛出此异常Cannot add an entity that already exists.

无论如何,你可以自己尝试保证这一点。