동일한 열 집합을 가진 두 개의 테이블이 있습니다. 객체의 "유형"에 따라 값은 두 테이블 중 하나에 저장됩니다. 이 두 테이블에 액세스하기 위해 공통 코드를 사용하고자합니다.linq-to-sql을 사용하여 쿼리 된 테이블을 전환하는 방법
"raw SQL"을 사용하는 경우 String.Format()을 사용하여 테이블 이름을 변경할 수 있습니다.
두 개의 별도의 테이블이 데이터 액세스 패턴으로 필요하다 (마찬가지로 업데이트 등을위한)
은 두 테이블에 일반적인 쿼리에 대해 매우 다른 따라서 서로 다른 인덱스가 필요하다. 테이블을 단일 테이블처럼 보이게 만드는 "뷰"및 "트리거 대신"등은 여기서는 좋아하지 않습니다. 많은 고객들이 SqlServer의 로우 엔드 버전을 사용하므로 파티션 테이블을 사용할 수 없습니다.업데이트 : 내가 가지고있는 문제의
일부는 내가 우리가 (
IQueryable<Event> AddFlexibleFieldsFilter(
FlexibleFields flexibleFields,
IQueryable<Event> qry,
IQueryable<EventFlexibleField> fields
)
같은 방법을 많이하고 서브 클래스를 사용하거나 인터페이스는 일반적인 유형과 잘 재생되지 않는다는 것입니다 여전히 .net 3.5)
감사합니다. 마스터 클래스를 사용하지 않으면 잘 작동합니다. 질문에 대한 편집을 참조하십시오. –