Я создал установщик WiX для развертывания набора веб-сайтов на сайте клиента и использования xml-файла для подключения правильных значений для имен хостов и connectionStrings в нашем web.config файлы. Так как эти значения получены от монтажника UI Я столкнулся с проблемой при выполнении апгрейда установки с помощью:Настройки Web.config, потерянные с помощью установщика Wix для выполнения обновления
msiexec /i Websites.msi /l*vx Website.log REINSTALL=ALL REINSTALLMODE=vomus
В то время как обновление выполняет правильно действия XMLFILE заткнуть пустые значения в так UI не запускается.
Есть ли способ получить эти значения в установщике без синтаксического разбора XML или повторного запроса инженера по установке значений?
Приветствие, Damien
Это может не сработать с IIS/ASP.NET (ничего нового там печально), но если вы разделите XML на 2 XML, установка будет намного проще. В основном один файл, который пользователь не модифицирует, который установщик может безопасно заменять снова и снова, и другой файл XML, который модифицирует пользователь/приложение/установщик, имеет свои вариационные точки в нем. В основном думаю stock.xml и override/transform.xml. –
Это в основном то, что я сделал. Я надеялся, что никогда не придется писать специальные действия, но не мог обойти это. Я собрал (довольно грязную) C# dll, чтобы читать значения, которые мне нужны из любых текущих файлов web.config и web.constants.config, и хранить их как существующие переменные WiX. Не идеально, и я должен следить за тем, что делает команда разработчиков, но этого достаточно, чтобы продолжать. –