2011-10-05 2 views
0

응용 프로그램의 값을 백 엔드 데이터베이스에 저장하는 Windows 서비스 응용 프로그램을 작성하려고합니다. 내 디자인은 사용자가 백엔드 데이터베이스를 선택할 수있는 방식이어야합니다. 레코드가 작성되어야합니다. 그래서 내가 사용할 수있는 경우 이러한 디자인 패턴을 하나 찾고있었습니다.이 옵션은 사용자 선택에 따라 여러 데이터베이스에 연결하는 것을 처리합니다.로딩 데이터베이스를 다루는 디자인 패턴

+0

Windows 서비스이므로 사용자 선택을 어떻게 입력 할 계획입니까? – Raghu

+0

@Ragzitsu Windows 응용 프로그램에서 호스팅되는 WCF 서비스입니다. –

답변

1

사용 저장소 패턴

public interface IDataStore 
{ 
    void AddData(SomeData data); 
} 

이 인터페이스는 각 대상 데이터베이스에 구현 될 수있다. 사용자 선택에 따라 구현을 선택할 수 있습니다. 이것은 .NET과는 아무런 관련이 없습니다.

여러 데이터베이스를 대상으로 Entity Framework를 사용할 수 있습니다. 사용자 선택에 따라 연결 문자열의 오른쪽 ssdl 파일로 전환하면됩니다. 모든 .NET ORM이 작업을 수행합니다

Multiple database support with Entity Framework

1

를 참조하십시오. LINQ-to-SQL, nHibernate, Entity Framework ...