使用EF Code First编辑实体时出错

时间:2012-09-10 03:26:00

标签: c# entity-framework ef-code-first

尝试首先使用EF代码编辑实体时出现此错误:

  

发生了参照完整性约束违规:属性   定义引用约束的值不一致   在关系中的主要和依赖对象之间。

我的实体是与国家有关系的制片人。我的编辑代码如下:

Producer producer = this.DataContext as Producer;
context.Producers.Attach(producer);
context.Entry(producer).State = EntityState.Modified;
context.SaveChanges();

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。我使用下面的代码,它工作正常,但我仍然不确定它是最好的方式。

Producer producer = this.DataContext as Producer;
Producer p = context.Producers.Find(producer.Id);
context.Entry(p).CurrentValues.SetValues(producer);
context.SaveChanges();