Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 实体框架不';救不了_C#_Linq_Entity Framework_Entity Framework 4_Linq To Entities - Fatal编程技术网

C# 实体框架不';救不了

C# 实体框架不';救不了,c#,linq,entity-framework,entity-framework-4,linq-to-entities,C#,Linq,Entity Framework,Entity Framework 4,Linq To Entities,我试图更新我的表Bareme,但我的唯一键(分类,部分)出现异常,但如图所示,如果对象确实存在,我只更新我的工资,并且我已通过“调试”验证插入的对象没有重复 内部的例外情况是: 违反唯一密钥约束“IX_Bareme”。无法在对象“dbo.Bareme”中插入重复的键。\r\n语句已被删除 终止 代码: for(int i=1;ix.Section==j&&X.Categorie==i).FirstOrDefault(); 如果(brm!=null) db.Entities.Baremes.Del

我试图更新我的表
Bareme
,但我的唯一键
(分类,部分)
出现异常,但如图所示,如果对象确实存在,我只更新我的工资,并且我已通过“调试”验证插入的对象没有重复

内部的例外情况是:

违反唯一密钥约束“IX_Bareme”。无法在对象“dbo.Bareme”中插入重复的键。\r\n语句已被删除 终止

代码:

for(int i=1;ix.Section==j&&X.Categorie==i).FirstOrDefault();
如果(brm!=null)
db.Entities.Baremes.DeleteObject(brm);
brm=新的Bareme();
brm.Categorie=i;
brm.截面=j;
brm.Salaire=dt.Rows[j-1][i.ToString()].ToString().ToDecimal();
db.Entities.Baremes.AddObject(brm);
}
尝试
{
db.Entities.SaveChanges();
}
捕获(例外情况除外)
{
MessageBox.Show(例如Message);
}

请使用
保存更改方法
保存选项
进行
保存前检测更改

示例

db.Entities.SaveChanges(SaveOptions.DetectChangesBeforeSave);

执行AddObject()时,所有行都将具有相同的ID BRM。这样可以吗???即使我像这样更新了我的代码,即使我添加了
SaveOptions,它也不起作用@HatSoft@SéddikLaraba您遇到了什么异常
更新实体时出错,有关更多详细信息,请参阅内部异常
内部异常写在问题中抱歉,我重新体验了我以前忘记了一些更改,它现在非常有效,谢谢you@S埃迪克拉拉巴没问题,伙计,我很高兴它为你修好了
db.Entities.SaveChanges(SaveOptions.DetectChangesBeforeSave);