使用SQLite的Entity Framework Core中的外鍵列表

c# entity-framework entity-framework-core sqlite

我想實現相關頁面結構,一個頁面有一個與其相關的其他頁面的列表。但我無法弄清楚它是否可能。現在我有這樣的結構:

public class Page
{
    public int ID { get; set; }
    public string UrlName { get; set; }
    public List<RelatedPages> RelPages1 { get; set; }
}
public class RelatedPages
{
    public int ID { get; set; }
    public int PageID { get; set; }
    public Page Page { get; set; }
    // I would like this to be the list of related page IDs 
    public List<int> RelPagesID { get; set; }
    public List<Page> RelPages { get; set; }
}

這是我的DbContext中的OnModelCreating方法:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
            modelBuilder.Entity<RelatedPages>()
                        .HasOne(x => x.Page)
                        .WithMany(x => x.RelPages1)
                        .HasForeignKey(x => x.PageID);

}

熱門答案

如果您嘗試進行遞歸選擇,以便EF將依次為同一個表加載所有記錄,那麼我認為這是不可能的。否則你的結構應該工作正常。



Related

許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因