Я новичок в linq. Я пытаюсь написать запрос linq, который будет искать по 3 поля в базе данных. Однако, если какое-либо из полей пустое или ничего, тогда оно не будет включать это поле в запрос.Поиск по нескольким столбцам в linq
Поиск объекта
Public Class Search
Public Property firstName As String
Public Property surname As String
Public Property address As String
End Class
Таблица
CREATE TABLE [dbo].[user] (
[id] [int] IDENTITY(1,1) NOT NULL,
[firstName] [nvarchar](50) NULL,
[surname] [nvarchar](50) NULL,
[fullAddress] [nvarchar](1050) NULL
Моя попытка, но это не будет получать какие-либо данные обратно
(From it In db.user
Where (
searchItems.firstName IsNot Nothing
AndAlso it.firstName.Contains(searchItems.firstName))
AndAlso (searchItems.surname IsNot Nothing
AndAlso it.surname.Contains(searchItems.surname))
AndAlso (searchItems.address IsNot Nothing
AndAlso it.fullAddress.Contains(searchItems.address))
Select it).
ToList
Кроме того, мне нужно, чтобы ограничить это до 250 записей
Заранее спасибо Paul
_ «как ограничить это до 250 записей» _, используйте 'Take 250'. Вы уверены, что не хотите использовать 'OrElse' вместо' AndAlso' во внешних условиях 'Where' (предлагаются скобки)? –