Целевой объект MSBuild AfterPublish

Я хочу, чтобы определенный файл был скопирован с опубликованным результатом моего веб-проекта. Я попытался изменить Build Action на Content и изменить Copy to Output Directory на Copy always. Это отлично работает, за исключением того, что он прячет его в подпапке так же, как в проекте.

Я не хочу, чтобы он был спрятан в подпапке. Я хочу, чтобы он находился рядом с остальной частью опубликованного вывода. Я подумал, что мог бы вместо этого решить эту проблему, используя AfterPublish Target.

Может ли кто-нибудь показать, как я могу это сделать? Я думаю, мне нужно как-то узнать путь, который человек выбрал в диалоговом окне «Публикация».


person Jason Marcell    schedule 01.12.2009    source источник
comment
Может есть решение. Вы хотите, чтобы файл находился в той же папке, содержащей, что и опубликованные выходные данные, или вы хотите, чтобы файл находился в корневой папке опубликованных выходных данных?   -  person Terry    schedule 22.02.2016


Ответы (1)


К сожалению, функция публикации скрыта глубоко внутри самой Visual Studio. Из-за этого вы очень ограничены в том, что вы можете сделать, чтобы продлить процесс. Из-за этого даже простая задача, которую вы описали здесь, на самом деле невозможна, по крайней мере, из вашего файла проекта. Если вам нужно лучше контролировать свои веб-развертывания, я бы посоветовал вам взглянуть на проекты веб-развертывания и/или MSDeploy. Я бы добавил проект веб-развертывания, который подготовит ваше веб-приложение к развертыванию, включая эту пользовательскую копию файла, а затем позволит MSDeploy выполнить фактическое развертывание за вас.

person Sayed Ibrahim Hashimi    schedule 02.12.2009