Сборка TFS не имеет того результата, что веб-публикация файловой системы

#asp.net #tfs #tfsbuild

#asp.net #tfs #tfsbuild

Вопрос:

Обычно я сам публикую файловую систему в своих веб-приложениях asp перед развертыванием в них в веб-корне моего веб-сервера, и Visual Studio красиво упаковывает мои aspx-страницы отдельно вместе с моими API и библиотеками в DLL.

Мне было интересно, как добиться тех же эффектов с помощью Team Build. На данный момент я могу запускать определения сборки с шаблоном по умолчанию, и на выходе я получаю только двоичные файлы DLL без создания каких-либо aspx-страниц вообще

http://postimg.org/image/occoo03zh/

Однако я получаю только библиотеки DLL без веб-страниц в Team Build

http://postimg.org/image/mat7co6vp/

Я пытался передавать различные аргументы MSBuild в надежде, что это изменило бы результат, но пока безуспешно. Кто-нибудь знает точные причины и способы, которыми я могу это решить? Является ли этот вывод из сборки TFS нормальным?

Проблема еще не решена, любая информация очень ценится.

Ответ №1:

Страницы Asp не компилируются, ваши скомпилированные DLL-файлы будут выведены в каталог binaries, но ваши страницы asp останутся в каталоге sources. вам нужно будет добавить действие post build, чтобы скопировать вашу структуру asp в папку drop.

Можете ли вы подтвердить это, заглянув в рабочую область сборки (на сервере сборки) и посмотрев, правильна ли структура в каталоге sources и что DLL были созданы в папке bin. если это так, вы можете скопировать всю эту структуру.

Комментарии:

1. Спасибо за ответ. Два изображения, которые я связал, состояли из нужного мне вывода, который инкапсулирует aspx-страницы и библиотеки DLL в bin, и текущего вывода, который я получаю из TFS build, который представляет собой только библиотеки DLL.

Ответ №2:

Вам нужно передать MSBuild некоторые аргументы, чтобы заставить его сгенерировать опубликованный веб-сайт таким, каким вы бы видели его при публикации в файловой системе. Смотрите здесь что-то подобное, выполненное с Visual Studio Online.

 /p:OutDir=$(build.stagingDirectory) /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true