2013-12-20 29 views
0

任何想法爲什麼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。

+0

好吧,它是一個EntityObject - 它們都是EntityObjects。這是僞代碼。這些類由實體數據建模器生成。我習慣與POCO合作。試圖保存沒有改變的對象的這種行爲稍微超出了我的想象。 – rkralston

+0

這是我正在維護的代碼。問題是內部類是通過代碼創建的,而不是用於更新外部類的Context的一部分。內部類和內部類外鍵分配給外部類。我刪除了內部類的賦值,外部類只保存了外鍵參考。 – rkralston

回答

0

這是我維護的代碼。問題是內部類是通過代碼創建的,而不是用於更新外部類的Context的一部分。內部類和內部類外鍵分配給外部類。我刪除了內部類的賦值,外部類只保存了外鍵參考。