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

本文关键字:linq sql 插入 记录 存在 | 更新日期: 2023-09-27 17:58:46

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

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

谢谢。

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

测试后:
如果您试图在数据上下文中插入新的实体,即使主键值已经存在,它也会插入一个新的实体with new ID

如果试图插入的实体是从同一数据上下文中提取的,那么它将抛出此异常Cannot add an entity that already exists.

不管怎样,你可以自己去投保。