экранирование двойных кавычек внутри одинарных кавычек - PullRequest
1 голос
/ 13 декабря 2011

Я пытаюсь получить ' "searchparameter*" ' для полнотекстового оператора SQL, содержащего таблицу.

string.Format("INNER JOIN CONTAINSTABLE(dba.{0}, *, ' \"{1}*\" ') as KEY_TBL on {2}.{3} = KEY_TBL.[KEY]", tableName, searchParameter, alias, columnName);

ВЫВОД:

INNER JOIN CONTAINSTABLE(dba.table, *, ' \"searchparameter*\" ') as KEY_TBL on table.id = KEY_TBL.[KEY]

ПРЕДПОЧТИТЕЛЬНЫЙ ВЫХОД:

INNER JOIN CONTAINSTABLE(dba.table, *, ' "searchparameter*" ') as KEY_TBL on table.id = KEY_TBL.[KEY]

Двойная кавычка верна, как мне избавиться от обратной косой черты?

1 Ответ

1 голос
/ 13 декабря 2011

Вы видите строку в этом формате, потому что значение внутри экрана Watch заключено в двойные кавычки. Следовательно, любые внутренние кавычки должны быть экранированы, чтобы строка оставалась действительной и отображаемой. Если вы глубоко копаете и смотрите на реальное значение (например, с помощью текстового визуализатора), вы увидите, что это именно то, что вам нужно.

enter image description here

...