0
我有一個模型,看起來像這樣:代碼首先映射爲實體框架層次
public class Category
{
public string Id { get; set; }
public string Description { get; set; }
public Category Parent { get; set; }
public ICollection<Category> Children { get; set; }
public ICollection<Product> Products { get; set; }
}
,看起來像
Categories
Id (PK varchar(5))
Description (nvarchar(50))
ParentId (FK varchar(5))
但是我難倒了,當涉及到建立一個數據庫表映射
modelBuilder.Entity<Category>()
.HasMany(x => x.Children)
.WithMany(x => x.Children)
.Map(m =>
{
m.ToTable("Categories");
m.MapLeftKey(x => x.Id, "Id");
m.MapRightKey(x => x.Id, "ParentId");
});
我可以看到爲什麼映射失敗(StackOverflowException),但我不確知如何解決它。任何幫助將非常感激。
這是使用最新版本的EF(4.1?)。
謝謝!
真棒。謝謝。還需要記住使這些屬性變爲虛擬。 – Joe 2011-05-19 21:09:49