Кто-нибудь придумал хороший способ выполнения полнотекстового поиска (FREETEXT() CONTAINS()
) для любого количества произвольных ключевых слов, используя стандартный синтаксис запроса LinqToSql?LinqToSql и полнотекстовый поиск - это можно сделать?
Я, очевидно, хотел бы избежать использования хранимого Proc или должен генерировать вызовы Dynamic SQL.
Очевидно, что я мог бы просто накачать строку поиска в от параметра к SPROC, который использует FREETEXT() или СОДЕРЖИТ(), но я надеялся быть более творческим с поиском и создать запросы, как:
«pepperoni pizza» и гамбургер, а не «яблочный пирог».
Сумасшедший Я знаю - но разве это не было бы возможно сделать это прямо из LinqToSql? Любые советы о том, как достичь этого, будут высоко оценены.
Обновление: Я думаю, что может быть на что-то here ...
Кроме того: я откатил изменения, сделанные в моем названии вопроса, потому что он на самом деле изменил смысл того, что я просил. I знаю, что полнотекстовый поиск не поддерживается в LinqToSql - я бы задал этот вопрос, если бы я хотел это знать. Вместо этого я обновил свой заголовок, чтобы успокоить массы с правым правым эффектом.
Эй, Джон, спасибо за это. Я доволен своим ответом в принципе и понимаю, что я мог бы добавить еще один слой абстракции. Не идеальный вариант - может также написать CONTAINS() SPROC и использовать Linq для любого другого. Мой вопрос: «Можно ли это сделать с помощью Linq»? Если нет, тогда вашего ответа будет достаточно. – RobertTheGrey 2008-09-16 08:24:35