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

时间:2016-08-08 13:32:59

标签: c# entity-framework sqlite entity-framework-core

我想实现相关页面结构,一个页面包含与其相关的其他页面的列表。但我无法弄清楚它是否可能。现在我有这样的结构:

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);

}

1 个答案:

答案 0 :(得分:0)

如果您尝试进行递归选择,以便EF将依次为同一个表加载所有记录,那么我认为这是不可能的。否则你的结构应该可以正常工作。