Как исключить папки из публикации/развертывания веб-приложения Visual Studio 2013

Я публикую веб-приложение из Visual Studio 2013. Мне нужно включить папки, которые не являются частью проекта, и исключить некоторые папки (некоторые отдельно от проекта, некоторые из них не относятся к проекту). Поэтому я вошел в мои свойства проекта и установил Items To Deploy в поле All files in this project folder, как вы можете видеть ниже:

введите описание изображения здесь

Затем я начал искать способ исключить папки из All files in this project folder. Я нашел эту страницу, в которой указано

Пользовательский интерфейс Visual Studio не раскрывает все параметры развертывания которые вы можете настроить. Например, вы не можете использовать интерфейс для исключения отдельную папку из развертывания. Однако вы можете это сделать редактирование файлов, в которых хранятся параметры конфигурации. Для каждой публикации profile есть файл .pubxml, который вы можете редактировать напрямую.

Эта страница ссылается на другую, которая объясняет, как редактировать файл, но не объясняет, как исключить определенные папки.

Я нашел другие сайты (этот), в котором объясняется, как исключить папки в более старых версиях Visual Studio, используя следующий тег в csproj файл:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> 
  ... 
  <ExcludeFilesFromDeployment>File1.aspx;File2.aspx</ExcludeFilesFromDeployment> 
  <ExcludeFoldersFromDeployment>Folder1;Folder2</ExcludeFoldersFromDeployment> 
</PropertyGroup>

Но похоже, что элементы XML для файла csproj больше не актуальны в VS2013. Я где-то читал (не могу вспомнить, где сейчас), что этот элемент был перемещен в файл [PublishProfileName].pubxml, но попытка этого не сработала.

Я уверен, что в Visual Studio 2013 есть способ сделать это, но для жизни я не могу понять, как это сделать. Я нашел дюжину связанных вопросов здесь, на Stackoverflow, а также на других форумах, но ни одно из решений не работает для меня в VS2013. Любая помощь очень ценится.

Ответ 1

Эти элементы действительно были перенесены в файл .pubxml в Visual Studio 2012 и позже. Здесь соответствующая документация в MSDN об исключении файлов и папок из развертывания.

Найдите соответствующий файл .pubxml в разделе "Свойства/публикация профилей" в обозревателе решений Visual Studio и добавьте новый элемент ExcludeFilesFromDeployment или ExcludeFoldersFromDeployment в элемент PropertyGroup, в котором перечислены файлы или папки, которые должны быть исключены, полуколонии.

Я отмечаю, что эти элементы не отображались в качестве опций в выборе IntelliSense, когда я ввел их в Visual Studio 2015, но проект скомпилирован и исключение все еще работает.

Ответ 2

в файле cpproj вы добавляете те папки и файлы, которые не должны быть включены в процесс публикации, например