G+

Как реализовать оператор LIKE в LINQ To SQL

Программирование Asp.net
Предыдущий Следующий

 Есть несколько вариантов, в зависимости от поствленой задачи:

1)Поиск всех слов, который начинаются по заданному критерию (критерием будет буква "с"):

 

View.Customers = from c in db.Customers

                            where c.ContactName.StartsWith("c")

                             orderby c.CompanyName

                            select c;

после этого будет генерированный код

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

2) Поиск всех слов, которые заканчиваются по заданному критерию (критерием будет буква "с")

 

View.Customers = from c in db.Customers

                            where c.ContactName.EndsWith("c")

                             orderby c.CompanyName

                            select c;

после этого будет генерированный код

 

exec sp_executesql N'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 N'SELECT [t0].[CustomerID],...

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

WHERE [t0].[ContactName] LIKE @p0

ORDER BY [t0].[CompanyName]',

'N'@p0 nvarchar(2)',@p0=N'%c%'

 

 

 

 

Комментарий:
  • В 23.12.2011 12:41:21, Аноним

    .Where(x => System.Data.Linq.SqlClient.SqlMethods.Like(x.с_текстовое_сообщение, "На счету: $%");

Самостоятельный отпуск Опыт заказа вывоза мусора в Киеве