SQL Dapper와 NHibernate를 이용한 ASP.NET MVC 레이어 분리

asp.net-mvc-3 dapper n-tier-architecture

문제

검색을 위해 SQL Dapper를 사용하고 CRUD를 위해 NHibernate를 사용하는 ASP.NET MVC 응용 프로그램에서 작업하고 있습니다. 레이어 분리에 문제가 있습니다.

나는 공용 User GetUsersList () 메소드를 가진 UserRepository를 저장소에 가지고있다. 여기에 "사용자"는 NHibernate 엔터티입니다. 여기에서 문제는 사용자가 'HasAltContacts'처럼 SQL 쿼리에서 직접 가져 오는 속성으로 존재하지 않는 UI에 필드를 표시해야한다는 것입니다.

이제, 제 질문은 별도의 DTO를 만들고 이러한 NHibernate 엔티티를 떠나서이 클래스를 중심으로 리포지토리 (적어도 READ METHODS)를 만들어야합니까?

수락 된 답변

여기에 "사용자"는 NHibernate 엔터티입니다. 문제는 여기에 사용자가 SQL 쿼리에서 직접받는 HasAltContacts와 같은 속성으로 존재하지 않는 UI에 필드를 표시해야한다는 것입니다.

뷰에 필요한 모든 속성을 포함 할 뷰 모델을 정의하십시오. 그런 다음 컨트롤러 작업을 통해 가지고있는 다양한 데이터 소스를 쿼리하고이 뷰 모델을 뷰에 전달하여이 뷰 모델을 채우게하십시오.



아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow