2016-08-08 2 views
0

관련된 페이지 구조로 구현하려는 경우 한 페이지에 관련된 다른 페이지 목록이 있습니다. 그러나 그것이 가능하다면 나는 알아낼 수 없었다. 당신은 EF가 차례로 모든 레코드를로드하도록 재귀 선택을하려고하면SQLite를 사용하여 Entity Framework Core의 외래 키 목록

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

} 

답변

0

: 여기

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되어 지금은이 같은 구조를 가지고 같은 테이블이라면 이것이 가능하다고 생각하지 않습니다. 그렇지 않으면 구조가 잘 작동합니다.

+0

RelatedPages의 RelPagesID에 1, 3, 5와 같은 여러 ID를 추가하고이 ID를 가진 페이지를 List 'RelPages'에 포함하려고합니다. 가능한가? –

+0

내가 RelPagesID 그것이 그러나, 당신은 그냥이 Pages.Where 같은 투사 할 수 있습니다 목록을 채우는 것 엔티티 프레임 워크에 의해 다음과 같이 채울 수 있습니다 생각하지 않는다 (p => p.Page.Id == 3433) 이 관련 페이지 ID 목록을 제공합니다. – Anubis

관련 문제