Как мне контролировать, какие типы файлов Visual Studio будут публиковать по умолчанию?

Я работаю с php-сайтом в Visual Studio 2010. Все шло хорошо, пока я не попытался опубликовать. Ни один из файлов php не включен в опубликованную версию сайта. Как это исправить?

Я прочитал в этой теме (в веб-публикации Visual Studio 2010 отсутствует файл), что вы можете изменить BuildAction свойство на основе файла. Отлично, но как мне сделать это автоматически для одиннадцати и нескольких нечетных файлов, распределенных по большой иерархии папок? Могу ли я изменить значение по умолчанию BuildAction скажем, для каждого файла, который заканчивается *.php? Я даже готов сделать это в командной строке, потому что, по крайней мере, тогда я могу перебрать список файлов и изменить его для каждого из них.

Редактировать: я понял кое-что: BuildAction Недвижимость хранится в <Project_Name>.vbproj файл в таком виде:

  <ItemGroup>
    <Content Include="aboutus.php" />
    <None Include="login.php" />

Вот как это выглядит сразу после того, как я изменил BuildAction из aboutus.php (через VS), но не из login.php. Разумное использование Find-and-Replace будет работать, но будет утомительным. Это мое временное решение.

2 ответа

Решение

Я действительно не нашел хорошего решения, но я нашел грязное решение. Я понял, что .vbproj файл - который содержит BuildAction настройка в формате XML. Итак, я заменил каждый случай <None ... с <Content ... и затем каждый </None> с </Content>, Это не было идеальным решением, потому что оно также затронуло много файлов, которые не должны были быть включены в опубликованную версию сайта, но это то, что есть.

Однако по ссылке KevDog я узнал, что можно создавать собственные шаблоны файлов для Visual Studio, которые влияют на BuildAction атрибут любых новых файлов, созданных с помощью этого шаблона. В моем случае это было неуместно, потому что это затрагивает только новые сгенерированные файлы, но может помочь кому-то еще, кто видит эту проблему в начале проекта - как я, в моем следующем php-проекте.

Один из способов изменить действие сборки нескольких файлов через VS IDE - выбрать все нужные файлы, затем свойства, а затем задать действие сборки. Я знаю, что это определенно работает для всех файлов с одинаковым расширением.

Другая вещь, о которой я бы подумал, - это макрос Visual Studio, чтобы получить желаемый результат, посмотрите здесь на сайте MSDN.

Другие вопросы по тегам