gpt4 book ai didi

c# - 当 IDENTITY_INSERT 设置为 OFF 时,EF 无法在表 'PATIENT DONOR' 中插入标识列的显式值

转载 作者:太空宇宙 更新时间:2023-11-03 15:32:37 25 4
gpt4 key购买 nike

我正在使用 EF 工作,我有一个具有标识属性的表,我尝试了很多解决方案,但我仍然遇到该错误。我将类中的属性定义为:

[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int PATIENTDONORID { get; set; }

我仍然得到那个错误,我在 OnModelCreating 中设置了身份选项,我也得到了同样的错误

 protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
// throw new UnintentionalCodeFirstException();

modelBuilder.Entity<PATIENT_DONOR>().Property(x => x.PATIENTDONORID)
.HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);

}

这是在数据库中进行插入和保存更改的代码:

foreach (var item in patient.DONORS)
{
if (item.Checked)
{
db.PATIENT_DONOR.Add(new PATIENT_DONOR() { PATIENT_ID = patient.PATIENT_ID, DONOR_ID = item.ID});
}
}

// db.Entry(patient).State = EntityState.Modified;
db.SaveChanges();

我该怎么办?

最佳答案

它现在工作正常。我意识到在 dB 发生任何变化后,我必须删除并重新拖动模型中的表格。而且代码本身没有问题

关于c# - 当 IDENTITY_INSERT 设置为 OFF 时,EF 无法在表 'PATIENT DONOR' 中插入标识列的显式值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33256186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com