여러 클라이언트에 대한 응용 프로그램을 작성 중이므로 각 클라이언트의 구현간에 유사점과 차이점이 있습니다. ORM에 UI 및 Entity Framework 용 Win Forms 및 WPF를 혼합하여 사용하고 있습니다. 가능한 한 공유 구성 요소를 재사용 할 수있는 능력이 필요합니다.여러 클라이언트에 대해 여러 프로젝트에 접근하기
핵심 문제 중 하나는 한 클라이언트의 데이터베이스가 Oracle이고 다른 하나는 MS Sql입니다. 이제는 두 데이터베이스 모두 작동하지만 컴파일 시점에 요소를 변경해야합니다. 즉, 데이터 프로젝트가 약간 다르지만 거의 동일한 프로젝트 두 세트가 있어야한다는 의미입니다. 한 UI에서 버그가 발견되면 다른 솔루션을 열고 거기에서 편집해야합니다.
나는 이전 프로젝트에서 Ninject를 사용했지만 직접 호출하는 UI가 아닌 UI에 특정 프로젝트/클래스를 주입하여 데이터 프로젝트의 제어를 어떻게 든 반전시킬 수는 있습니다.
내가 알아낼 수없는 문제는 전체 프로젝트를 주입하는 방법입니다. UI에서 db.Customers.ToList();
라고 말하고 내가 주입 한 데이터 프로젝트에서 고객을 돌려 주길 원합니다. 두 클라이언트의 데이터베이스 모델은 현재 시점에서 동일하지만 향후 변경 될 수 있습니다.
공유 용량에서 이러한 리소스를 사용할 수있는 패턴이 있어야합니다.
감사합니다.
클라이언트 프로젝트를 다른 솔루션으로 분할해서는 안됩니까? 클래스 라이브러리 (또는 라이브러리)에 클라이언트 관련 내용이없는 "핵심"솔루션을 만든 다음 클라이언트 솔루션을 만들고 해당 DLL을 참조하려고 했습니까? –