EF 4.1 코드 우선 학습서에는 다음 코드가 제공됩니다.
public class Department
{
public int DepartmentId { get; set; }
[Required]
public string Name { get; set; }
public virtual ICollection<Collaborator> Collaborators { get; set; }
}
그런 다음 유창한 인터페이스가 더 유연하다고 설명합니다.
데이터 주석은 사용하기가 쉽지만 훨씬 더 융통성을 제공하는 프로그래밍 방식을 사용하는 것이 좋습니다.
유창한 인터페이스를 사용하는 예는 다음과 같습니다.
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Department>().Property(dp => dp.Name).IsRequired();
modelBuilder.Entity<Manager>().HasKey(ma => ma.ManagerCode);
modelBuilder.Entity<Manager>().Property(ma => ma.Name)
.IsConcurrencyToken(true)
.IsVariableLength()
.HasMaxLength(20);
}
유창한 인터페이스가 왜 더 나은지 이해할 수 없습니다. 진짜야? 내 관점에서 볼 때 데이터 주석이 더 명확하고 더 의미 론적 느낌이납니다.
내 질문은 유창한 인터페이스가 속성을 사용하는 것보다 특히 더 나은 옵션 인 이유는 무엇입니까?
(참고 : 유창한 인터페이스의 전체 개념에 익숙하지 않으므로 이에 대한 사전 지식을 기대하지 마십시오.)