IQueryable Где не работает - PullRequest
0 голосов
/ 09 июня 2010

Я использую N-Hibernate и у меня есть класс / таблица с именем Boxers

У меня также есть таблица потенциальных клиентов, в которой указывается, является ли боксер потенциальным клиентом. (эта таблица представляет собой один столбец только идентификатора boxersID)

Итак, я хочу получить всех боксеров, у которых есть перспективы (имеется в виду всех боксеров, у которых есть идентификаторы в таблице перспектив)

Public static IQueryable<Boxer> IsProspect(this IQueryable<Boxer> query)
{
return query.Where(x => x.Prospect != null);
}

это не урезает мой список боксеров до предполагаемых боксеров ... все же, если я отладлю и посмотрю на любого боксера, у него будет True или false рядом с каждым правильно ...

Почему предложение where правильно не обрезает список?

1 Ответ

0 голосов
/ 09 июня 2010

Я бы порекомендовал избавиться от таблицы перспективы и добавить в таблицу Boxers столбец, называемый чем-то вроде «IsProspect», который является просто логическим значением.Это упростит вашу схему базы данных и ваши сопоставления NHibernate.

Кроме этого, проверка того, что x.Prospect не равно нулю, вернет все Boxer с.Вместо этого используйте следующую строку:

return query.Where(x => x.Prospect);

Просто убедитесь, что логическое значение равно true, вместо проверки того, что оно не равно нулю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...