У меня есть построитель запросов LINQ-2-Entity, который вкладывает различные типы предложений Where в зависимости от довольно сложной формы поиска. Прекрасно работает до сих пор.
Теперь мне нужно использовать индекс полнотекстового поиска SQL Server в некоторых моих запросах. Есть ли возможность добавить критерий поиска непосредственно в запрос LINQ и получить оценку в виде выбираемого свойства?
Если нет, я мог бы написать хранимую процедуру для загрузки списка всех идентификаторов строк, соответствующих критериям полнотекстового поиска, а затем использовать запрос LINQ-2-Entity для загрузки подробных данных и оценки других необязательных критериев фильтрации в цикле в строке. Это, конечно, очень плохая идея с точки зрения производительности.
Другой вариант - использовать хранимую процедуру для вставки всех идентификаторов строк, соответствующих полнотекстовому поиску, во временную таблицу, а затем разрешить запросу LINQ присоединиться к временной таблице. Вопрос: как объединить временную таблицу в запросе LINQ, поскольку она не может быть частью модели сущностей?