ON INSERT:无法添加具有已在使用的密钥的实体

时间:2009-07-09 20:47:08

标签: .net linq-to-sql

我没有代码,上面的错误继续提示INSERT。 DBML正在刷新!

异常详细信息:System.Data.Linq.DuplicateKeyException:无法添加具有已在使用的密钥的实体。

2 个答案:

答案 0 :(得分:10)

对我来说,在表的索引列上没有启用身份规范。启用它并更新DBML。

当然,如果您的主键不支持身份规范,则需要生成自己的主键。实体框架不使用您可能为列设置的默认值,因此如果您使用 uniqueidentifier 列并将默认值设置为 NEWID(),则可能是你的问题。在这种情况下,请使用

myObject.Id = Guid.NewGuid();

来自你的代码。

答案 1 :(得分:1)