Проверка родительского типа TPT EF4 - PullRequest
0 голосов
/ 09 мая 2011

У меня есть сценарий TPT в EF4 с абстрактным базовым классом.

Мне нужно выполнить запрос linq для коллекции дочерних типов, чтобы получить значение из поля одного типа родителя.

например.

ThisChild = Children.Where(c. => c.Parent.OfType<Mother>.JewelleryCollection > 10).FirstOrDefault();

В этом случае Parent - это абстрактный класс, в котором Mother является типом Parent.Mother является единственным типом, имеющим поле JewelleryCollection.

Приведенный выше пример ломается, потому что вы не можете использовать метод .OfType <>.Как мне лучше структурировать этот запрос?

Спасибо.

1 Ответ

0 голосов
/ 09 мая 2011

Поскольку вы выполняете запрос на ObservableCollection, это Linq-to-objects, где вы можете просто использовать преобразование:

ThisChild = Children.FirstOrDefault(c => 
    (c.Parent is Mother) && (((Mother)c.Parent).JewelleryCollection > 10));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...