![](/img/trans.png)
[英]Entity Framework error: Cannot insert explicit value for identity column in table
[英]Entity Framework 'Cannot insert explicit value for identity column' error
我理解错误消息在说什么。 我只是不确定为什么要这么说。 我的表具有一个Identity,并将其设置为自动递增,但是当我去保存一个实体时,出现以下错误:
当IDENTITY_INSERT设置为OFF时,无法为表“会议”中的标识列插入显式值。
我使用的是代码优先的方法,我的Conference
实体看起来像这样:
public class Conference
{
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public int DugoutId { get; set; }
public int ConferenceDetailsId { get; set; }
[ForeignKey("Id")]
public virtual Dugout Dugout { get; set; }
[ForeignKey("Id")]
public virtual ConferenceDetail ConferenceDetail { get; set; }
}
当我要保存会议时,值如下:
Id: 0
DugoutId: 15
ConferenceDetailsId: 1
Dugout: null
ConferenceDetail: null
有什么想法为什么不能节省?
[ForeignKey]服装指向Dugout和ConferenceDetails的错误属性。 应该是ForeignKey(“ DugoutId”)和ForeignKey(“ ConferenceDetailsId”)。
您是先使用代码还是正在自动生成代码? 根据您的操作,模型和数据库之间可能会不匹配。 您可以尝试使用探查器确切地知道EF试图做什么。 该线程也可以为您提供帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.