MVC3 응용 프로그램의 ViewModel 및 AutoMapper 디자인 전략과 함께 EF를 사용하고 있습니다.ViewModel CRUD 페이지가있는 ASP.NET MVC3 엔터티
내가 현재하고있는 CRUD 페이지를 만드는 데보다 효율적인 방법이 있는지 궁금합니다.
내 현재 프로세스가 포함됩니다
- 엔티티
- 만들기 복사 붙여 넣기는 다음을 통해 컨트롤러를 만들기 컨텍스트 목록
- 에 엔티티를 추가
- 이 아닌 필수 항목을 삭제를 통해 뷰 모델 만들기 Visual Studio 2010 컨트롤러 마법사 페이지를 만듭니다.
- Entity Framework를 사용하여 읽기 쓰기 작업 및보기로 컨트롤러 템플릿을 선택합니다.
- 모델을 내 엔터티 대신 내 ViewModel로 선택합니다.
- 적절한 컨텍스트를 선택합니다.
return View(db.BlockedUserViewModels.ToList());
로 :
IList<BlockedUser> blockedUsers = db.BlockedUsers.ToList();
IList<BlockedUserViewModel> blockedUserVMs = AutoMapper.Mapper.Map<IList<BlockedUser>, IList<BlockedUserViewModel>>(blockedUsers);
return View(blockedUserVMs);
- 나는 각 컨트롤러 CRUD 옵션과 같은 [권한 부여] 및 역할 권한을 추가해야합니다.
작업량이 너무 많습니다. 더 나은 해결책이 있기를 바라고 있습니다. (나는 Python/Django에서 한 줄의 코드로 강력한 CRUD 페이지를 만들 필요가있다.)
좋은 지적으로, 필자는이 패키지를 찾기 위해 쉬운 해결책을 간과했다. 이러한 유틸리티 메소드를 컨텍스트 내부에 두는 것이 적절합니까? 컨트롤러 [인증] 속성에 대한 팁을 가져 주셔서 감사합니다. 불행히도 일관성이 없습니다. – Valchris
구현에 따라 다릅니다. 엔티티에서 리포지토리 패턴을 사용하여 CRUD 작업을 관리하므로 서비스는 엔티티를 연관된 뷰 모델에 매핑하는 저장소 주위의 래퍼입니다. – shuniar
당신의 설명이 무엇인지에 대한 튜토리얼/예를 알고 있습니까? 저장소 기능에 대한 언급을 읽었지만 추가 된 복잡성 계층의 이점을 완전히 이해하지 못했습니다. – Valchris