2017-05-09 6 views
0
나는 현재 엔티티 프레임 워크 나는 다음과 같은 질문 있어요 어떻게 작동하는지 배우고로

: 내가해야 할 것을 읽었다 N 관계 (코드 첫 번째) : 기본 1 작성에의 C#/EF 모델 코드 - 관계 필수 필드

을 그것은 다음과 같습니다 :

public class Post 
{ 
    public int PostId { get; set; } 
    [MaxLength(200)] 
    public string Title { get; set; } 
    public string Content { get; set; } 

    public int BlogId { get; set; } 
    public Blog Blog { get; set; } 
} 

책 - 포스트 관계에 대한 참조 및 ID 필드가 있습니다. 필수 사항입니까?

난 항상 수동으로 데이터베이스 연결을했고, 단지 참조 필드

public Blog Blog { get; set; } 

이 방법은 내가 너무 블로그 이드에 액세스 할 수 있습니다 내가 계속 필요가 없습니다 있었다 모두 최신 상태를 유지합니다. EF 마이그레이션이 이런 식으로 작동하지 않는 것 같습니다.

그 이유는 무엇입니까? 참조와 ID 필드를 모두 유지하는 것이 가장 좋습니다.

+0

이외의 마이그레이션에 영향이 없어야합니다 데이터베이스 (Blog_ID). –

답변

1

Id를 포함 할 필요는 없지만 가상 키워드를 사용하여 지연로드를 사용하려는 경우 개체의 ID 만 필요로하는 인스턴스가 있으면 별도로 포함하는 것이 유용 할 수 있습니다.

예제는 다음과 같습니다

게으른/열망로드에 대한 자세한 내용은
public virtual Blog Blog { get; set; } 
public int BlogId { get; set; } 

가 : 당신이 FK EF는 당신을 위해 하나를 만들 것 제외하면 https://msdn.microsoft.com/en-us/library/jj574232(v=vs.113).aspx