Сценарий SSDT Post-Deployment (дамп данных с JQuery) - отключить подстановку переменных

В моем проекте SSDT у меня есть сценарий после развертывания, в который я включаю файл сценария.

: r. \ Data \ Data.Content.sql

Файл Data.Content.sql представляет собой дамп базы данных (операторы вставки) и содержит такое содержимое, как 'var $ sameHeightDivs = $ (' '. Product-tile-region' ');'. База данных содержит скрипты JQuery. Итак, я получаю следующие ошибки:

SQL72008: переменный документ не определен. или 72006: критическая ошибка сценария: при синтаксическом анализе '$ (' ' обнаружен неправильный синтаксис

Я обнаружил, что вы можете отключить «отключить подстановку переменных» с помощью аргумента -x.

Но есть ли способ где-нибудь это определить? (сценарий после развертывания? настройка проекта?)

Или есть другой способ решить эту проблему?

К вашему сведению: для создания дампа я использую Microsoft.SqlServer.Management.Smo.Scripter.

С уважением,

боб


person bob    schedule 30.01.2013    source источник
comment
Вау, похоже, команда SSDT действительно ненавидит людей, использующих jQuery!   -  person Rory    schedule 18.12.2015


Ответы (1)


Я разместил тот же вопрос в Форум инструментов данных SQL Server, на котором кто-то предложил обходной путь.

После генерации скрипта я выполняю поиск и заменяю на $ char.

function SearchAndReplace($file) {
    (Get-Content $file) | 
    Foreach-Object {$_ -replace "\$\(", "' + CHAR(36) + '("} | 
    Set-Content $file
}

Я включил '(', чтобы ограничить область действия (селекторами JQuery).

person bob    schedule 06.02.2013