나는 특정 유형의 엔티티를 필터링하려고를 인식하지 못합니다. Entity Framework를 사용하고 있으며 부모 엔티티와 부모 엔티티를 상속받은 다양한 자식이 있습니다. 나는이 아이들 중 하나를 걸러 내려고 노력하고있다. 예를 들어얻기 엔티티는 오류를 반환 - 엔티티에 LINQ는 방법 'System.Type GetType을()'
, 나는 다음과 같은 구조를 가지고 :
- 주소 : 엔티티
- 우편 번호 : 주소
- 거리 : 사용자 엔티티 참조가
주소를 하나의 주소. PostCode 유형의 주소와 연결된 사용자 목록을 얻으려면 어떻게합니까? I 즉
시도 :
var query = from User p in context.Users
where p.Address.GetType() == typeof(PostCode)
select p;
하지만 내가 얻을 : 엔티티에
LINQ는 방법 'System.Type GetType을()' 방법을 인식하지 않으며,이 방법은 변환 할 수없는 상점 식으로
나는 사용자 목록을 먼저 얻은 다음 몇 가지 유형을 선택하는 것과 관련된 몇 가지 해결책을 보았습니다. 이 솔루션의 문제점은 쿼리가 모든 사용자를 먼저 얻는다는 것입니다. 필자는 꽤 많은 사용자가 있기 때문에 필자의 쿼리에 필터를 포함시키고 싶습니다.
감사합니다.
기다립니다. 사용자는 주소가 하나뿐입니까? 따라서 PostCode 또는 Street 중 하나만 가질 수 있습니까? 그게 잘못 아닌가? – Euphoric
글쎄, 나는이 예제를 간단하게 만들었다. 아마도 가장 좋은 예는 아니지만, 그렇습니다. PostCode 또는 Street 만있을 수 있습니다. – Karan
'p.Address is PostalCode'를 사용하려고 시도했습니다. –