使用一对多关系会在内部对象上抛出主键异常

时间:2013-12-20 23:42:21

标签: entity-framework

为什么实体框架试图保存数据库中已存在的内部对象?

public partial class ConatainerClass : EntityPbject
{
    public InnerClass InnerClass {get; set;}

}

ObjectContext.ContainerClass.AddObject(newContainerClassObject);
ObjectContext.SaveChanges;

创建一个新的ContainerClass,附加一个现有的InnerClass,并调用Context.SaveChanges()会在InnerClass上生成一个PK_Constraint错误。

1 个答案:

答案 0 :(得分:0)

这是我维护的代码。问题是内部类是通过代码创建的,而不是用于更新外部类的Context的一部分。内部类和内部类外键被分配给外部类。我删除了内部类赋值,外部类只使用外键引用保存完好。