Как мне построить свой запрос, чтобы получить выходной SQL-запрос, например:
SELECT
[viewRegisters].[Id] AS [IdRegister]
WHERE Name LIKE '%a%bc'
OR
SELECT
[viewRegisters].[Id] AS [IdRegister]
WHERE Name LIKE 'a%b%c'
OR
SELECT
[viewRegisters].[Id] AS [IdRegister]
WHERE Name LIKE 'a%b%c%'
Я использую .Net Framework 4.0, Entity Framework v4.1 и C #.
EF v4.1 преобразует этот тип запросов linq из:
((IQueryable<T>)Data).Where(z => z.Field.Contains("a%b%c%"));
В:
SELECT
[viewRegisters].[Id] AS [Id]
WHERE Name LIKE N'a~%b~%c~%' ESCAPE N'~'
Это не то, что я хочу. Я хочу иметь возможность использовать символ процента, как я делаю непосредственно в БД.