Полнотекстовый программный запрос не возвращает результаты - SQL Server
Я использую полнотекстовый поиск в SQL Server 2008 и подключаюсь через приложение C # 2008. У меня есть строка подключения к моей базе данных, которую я успешно использовал много раз с регулярными инструкциями SELECT и хранимыми процедурами. Я пытаюсь реализовать полнотекстовый поиск для определенной таблицы, и я уже настроил свой каталог и индекс для полнотекстового поиска.
Тем не менее, я программно делаю полнотекстовый запрос, который, похоже, не работает. Он добавляет параметр, который я проверял, передается правильно. Если я добавлю поисковое слово туда, где находится параметр, и оставлю его в кавычках, я получу результаты точно такого же запроса в SSMS. Но когда я запускаю код, мой SqlDataReader возвращается без результатов. Я подозреваю, что это как-то связано с тем, что escape-символы не работают с двойными кавычками.
Вот то, что генерирует код (который не возвращает результатов):
Set NOCOUNT ON SELECT TOP 5 * FROM
(SELECT JobID, ROW_NUMBER() OVER (ORDER BY createdDate) AS num
FROM Jobs
WHERE isActive='true'
AND ( CONTAINS(([JobDuties]), 'FORMSOF(INFLECTIONAL, \"@Argument0\")')) ) AS a
WHERE num > 0
Тем не менее, когда я иду в SSMS и вставляю аргумент вручную следующим образом (это работает):
Set NOCOUNT ON SELECT TOP 5 * FROM
(SELECT JobID, ROW_NUMBER() OVER (ORDER BY createdDate) AS num
FROM Jobs
WHERE isActive='true'
AND ( CONTAINS(([JobDuties]), 'FORMSOF(INFLECTIONAL, "develop")')) ) AS a
WHERE num > 0
Итак, я знаю, что проблема связана с аргументом, но я не могу понять это. У меня есть другие запросы, где я точно так же добавляю аргументы программно, и это работает. Они не используют двойные кавычки, хотя. Есть какие-нибудь подсказки?
Спасибо !!