linq2sql在执行更新时出现duplicatekeyexception

本文关键字:duplicatekeyexception 更新 执行 linq2sql | 更新日期: 2023-09-27 18:04:52

我正在尝试使用linq2sql对数据库中的记录进行更新,但是,我得到以下异常抛出:

 'System.Data.Linq.DuplicateKeyException' in System.Data.Linq.dll ("Cannot add an entity with a key that is already in use.")   System.Data.Linq.DuplicateKeyException

虽然我理解异常告诉我的是什么,但在进行更新时怎么可能呢?我没有插入任何数据,所以实际上没有键应该更新?

 var Printer = db.Printers.FirstOrDefault(p => p.id == i.PrinterId);
 Printer.CenterId = GetCenterId(i.NewCenterCode);
 Printer.LastCenterCode = i.NewCenterCode;
 db.SubmitChanges();

任何想法?

linq2sql在执行更新时出现duplicatekeyexception

这是可能的,你正在使用你的dbcontext '太多',dbcontext已经管理相同的记录,你正在尝试更新。

尝试使用新的dbcontext来执行更新。dbcontext应该被频繁地创建、使用和处理。

https://stackoverflow.com/a/3151724/711061

相关文章:
  • 没有找到相关文章