문제

을 고려하면 다음과 같은 아키텍처:

  • 기본 개체'엔터티'
  • 파생된 개체'항목:기초'
  • 한 파생된 개체'CancelledEntry:항목'

에 EntitySQL 내가 쓸 수 있습니다:

[...] where it is of (only MyEntities.Entry) [...]

만 반환하는 개체의 유형에 항목이 없는 엔티티나 CancelledEntry.

Linq 에서 sql,다음 명령을 반환됩니다 유형의 개체를 입력 및 CancelledEntry.

EntityContext.EntitySet.OfType<Entry>()

무엇을 구문/기능을 사용하여만 반환하는 개체의 유형은 항목?

도움이 되었습니까?

해결책

왜 당신은 적용 확장자 방법에 진행< Entry>라는 ApplyBaseEntryFilter()는 것 이 필터 적용하고 반환을 진행하고 있습니다.< Entry>.

이것은 다시 사용하는 방법 linq 쿼리가 조각되어 있습니다.사용 확장자 방법에 진행< 엔터티>좋은 방법입니다 다시 사용하는 쿼리를해야 합 neve rneed 를 복사하고 붙여넣는 쿼리 조각은 주변의 응용 프로그램,희망하는 도움이 됩니다.

다른 팁

좋아,내가 찾은 부분적인 해결책:

EntityContext.EntitySet.OfType<Entry>().Where( obj => !(obj is CancelledEntry) )

이것은 아주 끔찍한 그러나,이후을 만든 경우 새로운 파생된 개체는,내가 가야하는 모든 질의 및 특별히 추가 조건을 제거합니다.

이 있어야 더 나은 솔루션

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top