2012-10-03 2 views
3

EF 코드에서 다 대 다 관계로 작업하기 시작하여 내 엔티티에 컬렉션이있는 것을 좋아하지 않습니다. 많은 사람들이 많은 관계를 내 저장소에서 처리하는 것을 선호하므로 repository.GetUsersForOrganization(organization)과 같은 작업을 수행 할 수 있습니다. 나의 주요 관심사는 내 엔티티에 콜렉션을 노출시키지 않고 내 저장소에서 몇 가지 메소드를 사용하면 관계를 가져오고, 추가하고, 삭제하는 등 다 대다 관계에 관한 모든 것을 처리한다. 나는 컬렉션을 제거하고 저장소 기반 접근 방식으로 대체하는 최선의 방법에 관해서는 거의 손해를보고있다. 어떻게 다른 사람들이 이것을 완성 했습니까?Entity Framework 코드 우선 - 컬렉션이없는 다수 대 다수

+0

왜 컬렉션이있는 것을 좋아하지 않겠습니까? 게으른 로딩과 함께, User.Organizations 및 Organization.Users 잘 작동합니다. – SWeko

답변

3

엔티티의 다 대다 관계에 대한 탐색 특성을 원하지 않는 경우, 다 대 다 관계를 맵핑하지 않고 대신 다 대다 관계에 대한 접합 테이블을 맵핑합니다 별도의 엔티티로 사용하고 저장소의 특수한 메소드에서 직접 액세스 할 수 있습니다.

+0

내가 간과 한 정확하면서도 분명한 대답. 데이터베이스에서 너무 추상적 인 것을 시도하면 데이터베이스가 실제로 작동하는 것을 잠시 잊었습니다. 팁 주셔서 감사합니다, 나는이 방법을 시험해보고 그것을가는 방법을 볼 것이라고 생각합니다! –