2011-03-31 4 views
3

ASP.NET (WebForms) 응용 프로그램을 개발하고 EntityFramework를 사용하고 있습니다. 엔티티를 사용하는 가장 좋은 방법이 무엇인지 궁금 해서요. 전체 데이터베이스에 대한 엔티티를 거의 만들지 않거나 특수한 용도로 많은 엔티티를 만드십시오.Entity Framework 모범 사례

예제 사례는 다음과 같습니다. 고객 표가 있습니다. 이 테이블에는 customers_addresses 및 customers_phones 테이블에 대한 ForeignKey가 있습니다. 나는이 데이터 세트에 들어 을 dB로 사용자에게 매핑 만 "이름"열이 나는 하나의 엔티티를 얻었다 경우 1의

  1. 자동 완성 고객 이름
  2. 표시 사용자 세부

두 개의 사례를 가지고 case 2 다른 테이블 사이에 모든 데이터와 연결이있는 다른 엔티티가 있습니다.

이제 단 하나의 항목 (2 번)만이 두 경우에 모두 도움이 될지 궁금합니다.

EF를 사용하는 것이 가장 좋습니다.

답변

7

귀하의 경우 자동 완성 시나리오에 대한 전문 엔티티를 보유한 이유가 없습니다. 귀하의 모든 쿼리에 대한 엔티티에 Linq에 사용할 것입니다 때문에, 단지 만드는 대신 전체 기업 자체

from Customer cust in ent.Customers 
select new { 
    CustomerName = cust.CustomerName 
}; 

여전히 경량 SQL 쿼리를 가지고 그런 식으로, 기업에서 바로 고객 이름을 선택하고 있는지 백엔드이지만 불필요한 "특수화 된"엔티티로 모델을 오염시키지 않습니다.

또한 게으른로드를 사용하는 경우 실제로 필요한 경우가 아니면 관련 엔티티 정보를로드하는 EF에 대해 걱정할 필요가 없습니다.

+0

Dzieki Marek; – jackal