1
천천히 MVC 응용 프로그램을 클래스 라이브러리와 함께 배치합니다. MVC> 서비스> IRepository> EFRepository. 지금 현재, EFRepository 구현은 각각 생성자에서 새로운 dbContext를 생성하지만 테스트를 방해하므로 대신 dbContext를 삽입해야합니다.unity.mvc3 및 ntier 앱의 작업 단위?
나는 내 응용 프로그램의 나머지 부분에 걸쳐 DI에 unity.mvc3을 성공적으로 사용하고 있지만 dbContext 삽입을 올바르게 구현하는 방법에 대해서는 혼란 스럽습니다.
- dbContext는 작업 단위 (UOW)로 작동합니까?
- Repository에 dbContext를 삽입하는 것이 맞습니까?
- 저는 dbContext를 요청마다 인스턴스화해야한다고 생각합니까?
나는 여기에서 어디로 가야할지 모르겠다. 작업 단위 (Unit of Work)가 있어야한다고 생각했지만 서비스 레이어에서 작업 단위 (UOW)가 발생합니다.
감사 모든 도움,
제임스
간결하게, 나는 그것을 좋아한다! 나는 더 많은 것을 조사해 왔으며 Repo 클래스는 context.save를 호출해서는 안되며, 단지 상태를 변경해야하는 것으로 보인다. 그것의 UoW 상태는 db에 유지됩니다. 이제 Repos는 상태를 변경하기 위해 컨텍스트가 필요하지만 context.save를 호출합니다. 서비스? 이 모든 것을 설정하는 방법을 고민하는 중! – James
내 블로그 엔진을 살펴보십시오. http://www.palmmedia.de/Blog/2011/2/7/aspnet-mvc-3-razor-based-blog-engine-with-sql-ce-40 아마도 일부 개념을 재사용 할 수 있습니다. 현재 Unity.MVC3을 사용하고 있지 않지만 곧 업데이트 할 예정입니다. – Daniel