2
메신저를 정의 은 다음과 같이 모델 수준 뭔가 외래 키 관계를 정의 EF 모델 mvc3에서 외래 키 관계를
public class CMShoppingEntities : DbContext
{
public DbSet<Category> Categories { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Category>()
.HasOptional(c => c.parentCategory)
.WithMany(c => c.ChildCategories)
.HasForeignKey(p => p.ParentID);
base.OnModelCreating(modelBuilder);
}
}
는 왜 우리가 필요하거나 데이터베이스/테이블 수준에서 외래 키 관계를 정의 할 필요가 않습니다 .. ?
아니요, 필수는 아니지만 데이터의 무결성을 유지하는 데 도움이됩니다. –
귀중한 의견을 보내 주신 stian 씨에게 감사드립니다.하지만 한 가지 더 묻고 싶습니다. 데이터베이스 서버에 추가로드를가하거나 관계를 유지하기 위해 더 많은 공간을 필요로할까요? –
질문이 막연합니다. 왜 데이터베이스에 외래 키가 필요한지 묻고 있습니까? 또는 EF로 외래 키를 모델링하는 이유는 무엇입니까? – Eranga