Пакет веб-развертывания, содержащий выходные данные из проекта веб-приложения и базы данных
В моей организации основным продуктом является веб-приложение и связанная с ним база данных. Как веб-приложение, так и база данных находятся под контролем исходного кода в TFS. Мы запускаем этот продукт в различных версиях во многих экземплярах веб-сайта IIS. При наличии такого количества экземпляров веб-сайта при развертывании IIS это atm. проблема.
Я хочу упаковать свое веб-приложение вместе с выводом из моего проекта базы данных. Я пытался создать пакет веб-развертывания, который позволяет легко, если я хочу, развернуть веб-приложение удаленно, локально или программно в IIS. Чего я хочу добиться, так это иметь один пакет, но я хочу знать, возможно ли встроить проект базы данных в пакет веб-развертывания, используя преимущества инкрементного развертывания базы данных dacpac? Если это невозможно, есть ли хорошие альтернативы пакету веб-развертывания, которые соответствуют моим потребностям?
1 ответ
Другой метод заключается в создании пакета MSI для развертывания как пакета веб-развертывания, так и обновления баз данных. Например, с помощью Advanced Installer вы можете использовать встроенную поддержку для пакетов веб-развертывания.
Для выполнения инкрементного развертывания базы данных dacpac вы можете вызвать SqlPackage.exe из того же MSI, что и настраиваемое действие. В связанном примере показан простой запуск EXE-файла, но вы можете изменить его для запуска любого желаемого EXE-файла, передавая необходимые параметры командной строки.
Если вы выполняете частые обновления веб-сайтов или параметры обычно меняются после установки / развертывания, то вам следует также взглянуть на следующий поток, в котором говорится о сохранении установок веб-сайтов во время обновлений.