http://jendaperl.blogspot.be/2011/02/like-in-linq-to-entities.html

я возникли некоторые проблемы с linq для сущностей в структуре сущностей ado.net. В основном то, что я делаю, это:

var results = (from c in companies
    where c.Name.StartsWith(letter)
    select c);

и это переводится в SQL как что-то вроде:

WHERE (CAST(CHARINDEX(@p, [Extent1].[Name]) AS int)) = 1

это нормально, но моя таблица содержит миллионы записей, поэтому она работает ОЧЕНЬ медленно. То, что мне нужно, чтобы сгенерировать это что-то вроде:

WHERE Name LIKE @p + '%'

Я искал высоко и низко и не могу найти никаких решений, кроме как использовать хранимую процедуру или использовать сущность SQL ...

Есть ли способ сделать это через linq? Возможно, расширив linq до сущностей поставщика linq или перехватив дерево команд или сгенерированный запрос?

Ответы на вопрос(2)

Ваш ответ на вопрос