已成功提交对数据库的更改,但在c#中更新对象上下文时发生错误

时间:2017-04-10 06:31:41

标签: c#

TruncateData("Order");
TruncateData("Customer");

context.Customers.Add(new Customer(fields));
//  context.Employees.Add(new Employee(fields));
context.SaveChanges();

fillComboBox();

public void TruncateData(String table)
{
    context.Database.
        ExecuteSqlCommand
        ("Delete from [dbo].[" + table + "]" + $" DBCC CHECKIDENT('{table}', RESEED, 0)");
    context.SaveChanges();

}

我正在将文件从csv文件读取到C#中的数据库,我正在使用Entity Framework上传到数据库。在插入值之前,我会截断数据,使主键每次从1开始。但是我收到了这个错误。

这是我的错误:

  

已成功提交对数据库的更改,但更新对象上下文时发生错误。 ObjectContext可能处于不一致状态。内部异常消息:保存或接受更改失败,因为多个类型ProjectTeam03ElectricStore.EF_Classes.Customer的实体具有相同的主键值。确保显式设置的主键值是唯一的。确保在数据库和Entity Framework模型中正确配置了数据库生成的主键。使用实体设计器进行数据库优先/模型优先配置。使用HasDatabaseGeneratedOption流畅的API或DatabaseGeneratedAttribute进行代码优先配置。

0 个答案:

没有答案