데이터베이스에서 블로그 데이터를 검색하기 위해 Entity Framework와 함께 작업하고 있습니다. 나는 "BlogPost"클래스와 "Author"클래스를 가지고있다. 한 명의 작성자는 많은 블로그 게시물을 보유 할 수 있지만 Author 객체 자체에는 블로그 게시물의 목록이 포함되어 있지 않습니다. Author 객체와 관련하여 모든 블로그 게시물과 독립적입니다.Entity Framework - 하위 개체의 외래 키
Author 클래스의 인스턴스는 BlogPost의 속성으로 포함됩니다. 모든 저자에게는 저자가 있습니다. 내 데이터베이스에서 특정 블로그를 가져 와서 Author 객체에 해당 데이터로 채우고 싶습니다. 내가 객체를 매핑하려면 다음 코드를 사용하여 내 블로그 게시물 클래스에 AuthorId 속성을 포함하여이 작업을 수행하기 위해 관리해야 :
this.HasRequired(t => t.Author).WithMany().HasForeignKey(x => x.AuthorId);
내가하고 싶은 무엇, 그러나, 같은 일을 할 수있을 것입니다 AuthorId 속성을 모델에 직접 포함하지 않아도됩니다. 그 이유는 Author 객체가 이미 해당 ID를 포함하고 있기 때문에 동일한 정보를 두 번 반복하기 때문입니다. 나는이 라인을 따라 뭔가를하고 싶습니다
this.Property(t => t.Author.Id).HasColumnName("id_user");
this.HasRequired<TwitterUser>(t => t.Author).WithMany().HasForeignKey(t => t.Author.Id);
그래서 저자 개체 자체와 함께 블로그 게시물 객체를 중복 AuthorID를 저장하지 않고 저자 하위 개체를 검색 않는 방법이?
하나의 탐색 속성만으로도 독립적으로 작동합니다. 기본 FK (밑줄,'Author_Id' 등으로)에'HasRequired (t => t.Author) .WithMany()'를 사용하거나'.Map (m => m.MapKey "AuthorId"))'FK 이름을 매핑합니다. – Slauma
@Slauma - 흠 .. 흥미로운. 내가 읽은 모든 것은 독립적 인 협회가 양쪽 끝에 네비게이션 속성을 요구한다고 말합니다. –