2016-05-18 2 views
1

Я пытаюсь использовать webdeploy для нашего приложения asp.net. Сегодня я попытался активировать флаг «Прекомпиляция во время публикации». Кажется, что этот флаг не работает вместе с «Исключить файлы из папки App_Data».Webdeploy - прекомпиляция ошибки приложения asp.net с исключенными связями в исключенной папке app_data

Прежде чем активировать предварительную компиляцию в webdeploy, все работает нормально. Если я удалю configSource из моего connectionStrings и запустим webdeploy с предварительной компиляцией, он снова будет работать.

Проблема в том, что я должен загрузить внешний файл соединительной строки, потому что он будет управляться администраторами для производственных сред.

Сообщение об ошибке я получаю от webdeploy является:

«Произошла ошибка при загрузке файла конфигурации: Directory 'C: \ MyProject \ OBJ \ Release \ AspnetCompileMerge \ Source \ App_Data' не существует Не удалось запустить. мониторинг изменений файла. "

Моя текущая настройка заключается в следующем: Web.Config:

<configuration> 
    <!-- Section stuff here --> 
    <connectionStrings configSource="App_Data\DBConnection.xml" /> 
    <!-- More stuff here --> 
</configuration> 

Новые настройки webdeploy: enter image description here enter image description here

ответ

0

Эй, это не сработало для нас. Но мы также обновили наши tfs в последние дни, и мы рассмотрели параметры webdeploy, которые можно легко установить с помощью диспетчера выпусков из наших новых tfs. Таким образом, мы только что прочитали, что он соединяется в web.config и чем мы скомпилируем все. В итоге мы решили, где оно будет развернуто, и мы автоматически установим соединительные строки, которые скрыты для нас Devs.

0

Try исключая конфигурационный файл из пакета, добавив следующий MSBuild скрипт для либо файл проекта или файл wpp.targets:

<ItemGroup> 
    <ExcludeFromPackageFiles Include="App_Data\DBConnection.xml"> 
    <FromTarget>Project</FromTarget> 
    </ExcludeFromPackageFiles> 
</ItemGroup>