Выражение Linq возвращает ноль, а не пустой набор - PullRequest
0 голосов
/ 18 ноября 2010

Я нахожу эту странную проблему. Когда я делаю это>

activities.Where(Function(a) (Not a.IsDeleted And a.ParentId = 100)

Возвращает запрос в памяти, и когда я пытаюсь открыть его, он выбрасывает объект без установленного исключения. Это происходит только тогда, когда не было предметов, удовлетворяющих условию. Разве это не должно возвращать пустой набор?

Когда есть элементов, удовлетворяющих условию, тогда он возвращает список и работает хорошо

Есть идеи?

1 Ответ

1 голос
/ 18 ноября 2010

Похоже, что вы можете быть укушены при использовании логического And. Вы, вероятно, хотели AndAlso замкнуть ваше логическое выражение:

Not a.IsDeleted AndAlso a.ParentId = 100

При использовании AndAlso вторая часть будет оценена, только если первая часть верна.

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