使用复合键克隆一行

问题描述 投票:0回答:1

当我想要克隆一行时,我收到以下错误:

对象的关键信息的属性部分,不能修改。

但我不想编辑相应的行但想要添加它!

 var parametersDisplay = db.utilisations_parametres_affichages.Where(o => o.utpar_clie_id == originalClientId).ToList();
 foreach (var parameterDisplay in parametersDisplay)
 {
       parameterDisplay.utpar_clie_id = copyClientId;
       parameterDisplay.utpar_user_update = "Backoffice";
       db.utilisations_parametres_affichages.Add(parameterDisplay); // <== Exception
       db.SaveChanges();
 }

我尝试过使用EntityState.Added但它也不起作用。

该表有两个主键,我只想编辑一个。

编辑:这是一个复合键,有2个字段

c# .net sql-server entity-framework
1个回答
0
投票

检查here确保您已定义主键。如果还没有,那么任何非空字段都将用作连接的主键。

© www.soinside.com 2019 - 2024. All rights reserved.