예제로보기 쉽다 - 먼저 데이터베이스를 구성하기 위해 코드 우선을 사용하고 있습니다. 다음과 같은 수업이 있습니다 :Entity Framework 클래스가 관련없는 클래스의 가상 멤버를 필요로하는 이유
public class Blog
{
public int Id { get; set; }
public string Title { get; set; }
public string AuthorName { get; set; }
public List<Post> Posts { get; set; }
public string BlogCode
{
get
{
return Title.Substring(0, 1) + ":" + AuthorName.Substring(0, 1);
}
}
}
public class Post
{
public int Id { get; set; }
public string Title { get; set; }
public string Content { get; set; }
public virtual Blog Blog { get; set; }
}
왜 게시물에 공개 가상 블로그 블로그가 필요한지 이해가 가지 않습니다. 블로그에 다시 링크하기 위해 데이터베이스의 외래 키 역할을합니까? 블로그 ID를 사용하는 경우처럼 보입니다.
만약 Hibernate와 같은 것이라면,'virtual'에 대한 필요성은 동적 프록시가 만들어 져서 lazy-load 기능을 제공하기 위해 멤버를 '오버라이드 (override)'하기 때문입니다. –