2010-05-07 5 views
1

새 프로젝트를 작성 중이며 데이터에 대해 LINQ to SQL을 사용하여 액세스에 액세스하려고하지만 다음 문제가 발생했습니다.여러 데이터베이스와 함께 LINQ to SQL 사용

나는 예를

를 들어, 내 응용 프로그램에 액세스 3 유사와 데이터베이스가 아닌 같은 테이블 구조가 필요

Database1 및 데이터베이스 (2)는 CUSTOMERNAME

DATABASE2 2 열 CustomerKey와 함께 tblCustomer라는 테이블이 있습니다 3 열 CustomerKey, CustomerName 및 CustomerPostCode

나는 3 개의 쿼리를 허용하는 솔루션을 찾고있는 tblCustomer 테이블이 있습니다 데이터베이스 3 GetCustomerList 함수없이 Database1 및 Database2 같은 구조를 사용할 수 있습니다. 데이터베이스 3에 대한 재정의 기능을 사용하면 추가 필드를 다시 가져올 수 있습니다.

내가 사전에 데이터베이스에 대한 상속 된 버전의 데이터베이스 3.

감사를 1과 2를 처리하는 기본을 데이터 컨텍스트 클래스를 선언 할 수있는 방법은

스튜어트 퍼거슨

+0

좋아하는 답변에 플래그를 지정하는 것을 잊지 마세요. – Steven

답변

1

내가이 생각인가 하나의 단일 엔티티/도메인 오브젝트를 사용하여 3 개의 약간 다른 테이블 정의 (세 개의 데이터베이스에서)를 가질 수 있습니다. 이 작업을 수행하려면 POCO 엔티티 (따라서 L2S 오브젝트에 장식 된 속성 없음)를 사용해야하고 DataContext에 데이터베이스 정의를 포함하는 매핑 소스를 제공해야합니다. 이 경우 별도의 데이터베이스 연결 세 개가 필요하며 각 데이터베이스 연결마다 자체 매핑이있는 DataContext이 필요합니다.

이 방법이 효과가있을 수 있지만,이 솔루션은 약할 수 있습니다. 아마도 다른 고객 개체가 동일한 인터페이스를 구현하게하거나 모든 개체를 나타낼 수있는 (LINQ to SQL 관련) 개체 (프록시)를 사용하는 것이 좋습니다.