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

Yve*_*ves 2 .net linq-to-sql

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

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

Tho*_*rin 10

听起来我没有在表的索引列上启用Identity Specification.启用它并更新DBML.

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

myObject.Id = Guid.NewGuid();
Run Code Online (Sandbox Code Playgroud)

从你的代码.