나는 다양한 데이터 저장소에 반대 일반적인 저장소를 작성하는 방법을 마련하기 위해 노력했습니다 :우리 모두 똑같은 IRepository를 찾고 있습니까?
public interface IRepository
{
IQueryable<T> GetAll<T>();
void Save<T>(T item);
void Delete<T>(T item);
}
public class MemoryRepository : IRepository {...}
public class SqlRepository : IRepository {...}
나는 각각 같은 마시고 도메인 클래스에 반대하고 싶습니다.
public interface IRepository<T>
{
IQueryable<T> GetAll();
void Save(T item);
void Delete(T item);
}
public class MemoryCustomerRepository : IRepository {...}
public class SqlCustomerRepository : IRepository {...}
내 질문 : 1) 첫 번째 방법도 가능한가 또한 각 도메인 클래스가 자신의 저장소를 가지고 비슷한 방식을 고려 중이 야? 2) 두 번째 접근법에 이점이 있습니까? 내가 RDBMS와 XmlWriter
/XmlReader
을 대상으로 내 자신의 매핑 프레임 워크를 쓸 때