23
我讀了很多程序員的帖子,這些帖子遇到了無法確定依賴操作的有效順序。由於外鍵約束,模型要求或商店生成的值,可能會存在依賴關係 - 在實體框架中使用自引用關係時出現異常。實體框架中的自引用/父子關係
我試圖讓親子關係的工作:
public class Category {
public int CategoryId { get; set; }
public string Name { get; set; }
public int ParentId { get; set; }
public Category Parent { get; set; }
public List<Category> Children { get; set; }
}
這是我的配置使用(流利API):
Property(c => c.ParentId).IsOptional();
HasMany(c => c.Children).WithOptional(c => c.Parent).HasForeignKey(c => c.ParentId);
//HasOptional(c => c.Parent).WithMany(c => c.Children).HasForeignKey(c => c.ParentId);
兩者的hasMany()和HasOptional( )配置會導致「無法確定有效排序依賴操作...」例外,當我嘗試保存一個新類別時,請執行下列操作:
context.Categories.Add(new Category { Name = "test" });
我不明白爲什麼EF不插入帶有空parentId的類別。該數據庫允許ParentId外鍵爲空。
你能告訴我該怎麼做嗎?
謝謝!這工作。 – Julius 2012-03-31 14:15:40
+1給你們兩個,你讓我的一天。 Thax很多。 – 2013-11-10 15:49:46
有沒有一種方法來實現這個父子關係的屬性(流利)? – Shimmy 2015-02-26 14:07:19