방금 ORM을 전환해야했는데 쿼리 논리가 어디에서나 유출되기 때문에 비교적 어려운 작업이었습니다. 새로운 응용 프로그램을 개발해야한다면 개인적으로 선호하는 것은 ORM을 사용하여 모든 쿼리 논리를 캡슐화하여 변경을 위해 미래를 보장하는 것입니다. 리포지토리 패턴은 코딩 및 유지 관리가 매우 까다로워서 문제를 해결할 다른 패턴이 있는지 궁금합니다.
실제로 필요하기 전에 추가 복잡성을 추가하지 않고 민첩한 등의 게시물을 예견 할 수는 있지만 기존 패턴 만 유사한 문제를 더 간단한 방법으로 해결하는 데 관심이 있습니다.
내 첫 번째 생각은 확장 유형 메소드를 통해 특정 유형 저장소 클래스에 필요한 메소드를 추가하는 일반 유형 저장소를 갖는 것이었지만 정적 메소드를 테스트하는 것은 끔찍한 고통입니다. IE :
public static class PersonExtensions
{
public static IEnumerable<Person> GetRetiredPeople(this IRepository<Person> personRep)
{
// logic
}
}