Есть ли хороший способ обнаружить пустые результаты в запросе Linq-To-Entities? - PullRequest
3 голосов
/ 29 мая 2009

Единственный способ, которым я знаю, - это неловко:

'check for empty return
Dim count As Integer = (From s In myEntity.employee Where employeeID = myEmployeeIDVariable).Count

'If there is a record, then process
If count > 0 Then
     Dim r = (From s In myEntity.employee Where employeeID = myEmployeeIDVariable).First()

     . . . do stuff . . .
End If

Ответы [ 2 ]

5 голосов
/ 29 мая 2009

Вы можете присвоить результат LINQ переменной и проверить, равен ли .Count ()> 0. Таким образом, вам не нужно будет выполнять один и тот же запрос дважды.

Код:

'check for empty return
Dim r = (From s In myEntity.employee Where employeeID = myEmployeeIDVariable)

'If there is a record, then process
If r.Count() > 0 Then
  . . . do stuff . . .
End If
5 голосов
/ 29 мая 2009

Используйте .FirstOrDefault (). Вы получите первую запись, если она есть, или ноль, если запись не возвращена.

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