Як реалізувати оператор LIKE в LINQ To SQL

111

Програмування Asp.net
Попередній

Наступний

Є кілька варіантів, залежно від поствленой завдання:

1)Пошук всіх слів, що починаються за заданим критерієм (критерієм буде буква “з”):

View.Customers = from c in db.Customers

where c.ContactName.StartsWith(“c”)

orderby c.CompanyName

select c;

після цього буде генерований код

exec sp_executesql ‘ SELECT [t0].[CustomerID],… FROM [dbo].[Customers] AS [t0] WHERE [t0].[ContactName] LIKE @p0 ORDER BY [t0].[CompanyName]’, ‘N’@p0 nvarchar(2)’,@p0=’c%’

2) Пошук всіх слів, які закінчуються за заданим критерієм (критерієм буде буква “з”)

View.Customers = from c in db.Customers

where c.ContactName.EndsWith(“c”)

orderby c.CompanyName

select c;

після цього буде генерований код

exec sp_executesql ‘ SELECT [t0].[CustomerID],…

FROM [dbo].[Customers] AS [t0]

WHERE [t0].[ContactName] LIKE @p0

ORDER BY [t0].[CompanyName]’,

‘N’@p0 nvarchar(2)’,@p0=N’%c’

3) Пошук слова, які містять заданий критерій

View.Customers = from c in db.Customers

where c.ContactName.Contains(“c”)

orderby c.CompanyName

select c;

після цього буде генерований код

exec sp_executesql ‘ SELECT [t0].[CustomerID],…

FROM [dbo].[Customers] AS [t0]

WHERE [t0].[ContactName] LIKE @p0

ORDER BY [t0].[CompanyName]’,

‘N’@p0 nvarchar(2)’,@p0=N’%c%’