우리는 과체중 컨트롤러에서 전체 도메인으로 로직을 이동시켜 마른 컨트롤러를 생성하려고합니다.스키너 컨트롤러를 사용하는 N 계층 도메인/뷰 모델에 대한 모범 사례
View Model을 채울 수 있도록 컨트롤러에 올바른 정보를 제공 할 수있는 도메인 모델을 작성하는 방법에 대한 질문이 있습니다.
우리의 데이터베이스 먼저 솔루션은 다음과 같은 계층을 가지고
:UI
저장소
• 도메인
• (현재 웹 프로젝트는 MVC 사용) •• 데이터 액세스 계층 - 엔티티 프레임 워크
? 데이터 (SQL Server를 가리키는 데이터베이스 프로젝트)
보기 엔티티의 데이터 양이 다른보기 모델이 필요한 다양한 뷰가 있다고 가정 해 보겠습니다.
• OrderBasic보기 모델 - 단지 ID, 제목 및 OrderWithCustomer보기 모델 • 날짜
- 고객 엔티티에서 위의 플러스 고객의 이름과 전화 번호
• OrderWithLines 모델보기 - OrderBasic 및 해당 정보가 포함 된 Order Line 목록
• 기타
,210우리의 옵션을 것 같다 :
을 다음과 유사 도메인 모델을 만듭니다. 도메인 모델이 개별 뷰의 요구 사항에 영향을받으며 코드를 복제하기 때문에이 둘 모두가 옳지 않은 것처럼 보입니다.
필요할 수있는 모든 정보가있는 각 엔터티에 대해 하나의 도메인 모델을 만듭니다. 일부보기의 경우 성능에 좋지 않은 것처럼 보입니다. 필요한 정보보다 많은 정보가 채워지고 클라이언트로 전송됩니다.
as 2 그러나 필수 입력란 만 채우는 별도의 매개 변수화 된 도메인 메소드가 있습니다. 이것은 더 효과적 일 수 있지만 모델이 불완전하다는 것을 의미합니다.
더 좋은 방법이 있습니까? 모범 사례는 무엇입니까?
감사합니다.
크리스.
항상 좋은 출발점입니다. http://lostechies.com/jimmybogard/2013/07/17/how-we-do-mvc-4-years-later/ – Fran