2014-02-21 3 views
0
엔티티 프레임 워크와 도메인 레이어에

디자인 질문 -엔티티 프레임 워크 및 도메인 레이어

나는 동일한 구조를 가질 것 엔티티 프레임 워크와 DTO들과 엔티티 객체를 사용하여 새 응용 프로그램을 만드는 오전하지만 꽤있을 것 관련된 비즈니스 로직. 따라서 응용 프로그램의 성능 및 유지 관리

접근을 고려하는이 ​​다음에서 가장 좋은 방법이 될 것 궁금 1 :

    T4 템플릿에서 생성
  • 사용 엔티티 객체 도메인
  • 하는 부분 개체 만들기로 클래스와 비즈니스 로직
  • 목록 항목

을 추가 UI 레이어

에 엔티티 객체를 노출

접근법 2 :

  • 엔티티 사이의 매핑을 구현
  • 는 DTO들에 비즈니스 로직을 추가 도메인 계층에 대한 DTO들 만들기 -> DTO와 DTO -> 엔티티
  • 가 DTO들을 노출 UI 레이어
+0

DTO에는 비즈니스 로직이 포함되어서는 안됩니다. 계층 간의 데이터 전송이어야하기 때문입니다. 완전히 새로운 앱인 경우 코드 첫 번째 접근 방식을 고려해 보셨습니까? 그리고 나는 당신의 경우에 도메인 객체 즉 엔티티 객체없이 비즈니스 로직을 유지할 것을 제안합니다. – milagvoniduak

+0

http://programmers.stackexchange.com/에서 프로그래밍하는 방법에 대해 이러한 유형의 개념 아이디어를 묻는 것이 좋습니다. –

답변

0

저는 개인적으로 내 도메인 모델 또는 dtos에 BL을 넣지 않을 것입니다. 내 컨트롤러는 내 도메인 계층을 알고 있고 비즈니스 계층도 알고 있습니다. 내 컨트롤러가 내 BL에게 작업을 요청하고 도메인 모델을 반환합니다. 컨트롤러 레이어는 도메인 모델을 dto에 매핑하고 dto를 보냅니다.

0

나는 모든 프로젝트에서 두 가지 옵션을 결합했습니다. 예를 들어 5 ~ 6 개 테이블의 열이있는 격자를 사용하는 경우 하위 속성에 바인딩하지 않아도되므로 열을 Dto의 속성에 쉽게 바인딩 할 수 있습니다. 또한 객체가 여러 하위 속성을 가지고있는 경우 그리드 필터를 만드는 것이 더 어렵습니다.

그래서 나는 그것의 더 나은 사용하는 추측 여러 테이블에서 데이터의 경우 DTO의

당신은 내가 과잉 엔티티와 정확한와 DTO 사이의 맵핑을 작성하기 위해 약간을 추측 한 테이블의 데이터 만있는 경우 동일한 속성.