Как изменять параметры развертывания в файлах профиля публикации (PUBXML) и файле .wpp.targets в веб-проектах Visual Studio
В этом разделе описано, как настроить параметры развертывания путем редактирования публиковать файлы профиля (.pubxml) или путем создания файла .wpp.targets для веб-проектов Visual Studio. Тема применяется к следующим продуктам:
Visual Studio 2012
Visual Studio Express 2012 для Web
с Visual Studio 2010Устройств Visual Studio публиковать обновление
с Visual Web Developer 2010, экспресс-выпускУстройств Visual Studio публиковать обновление
Изменение файла профиля публиковать или создать файл .wpp.targets могут быть необходимы в силу того, что некоторые задачи конфигурации развертывания нельзя сделать в пользовательском интерфейсе среды Visual Studio. Некоторые параметры развертывания, могут быть заданы только с помощью одного из XML-файла, которые управляют конвейер публикации в интернете (препроцессор Windows).
В этом разделе содержатся следующие подразделы.
Редактирование публиковать файлы профиля (.pubxml)
Если нужно настроить параметры, относящиеся к частности публикуют профиль, которые изменяют публиковать файл профиля. Публиковать файлы профиля назовите <profilename>.pubxml и найти в папке \ PublishProfiles свойств в папке проекта. Каждый файл, содержащий параметры, которые применяются к одному публикуют профиль. Значения, введенные в мастере Опубликовать веб-сайт хранятся в этих файлах.
Создание файла .wpp.targets
Если нужно настроить параметры, которые применяются ко всем профилям используемые в проекте, необходимо создать файл .wpp.targets. Файл .wpp.targets должен находиться в папке проекта и должен быть именем <projectname>.wpp.targets.
Примечание
Если используется вкладка Упаковка и публикация SQL-проекта чтобы настроить развертывание базы данных, может потребоваться изменение параметров развертывания базы данных в файле проекта.Сведения о том, как изменение параметров, относящихся к вкладке Упаковка и публикация SQL-проекта см. в разделе версию платформы .NET Framework 4 данного раздела.
Редактирование публиковать файлы профиля (.pubxml)
При создании профиля публиковать, 2 файла созданы в папке PublishProfiles: <profilename>.pubxml и <profilename>.pubxml.user. Файл .pubxml.user содержит лишь несколько параметров, которые применяются к конкретному пользователю, например зашифрованный пароль. По умолчанию он не включен в систему управления версиями. Обычно при изменении параметров, связанных с профилирования редактировании файла .pubxml, а не файл .pubxml.user.
Изменение файла профиля публиковать (.pubxml)
В Обозреватель решений дважды щелкните файл, чтобы открыть его.
Если элемент необходимо изменить уже находится в элементе PropertyGroup, изменяет его значение; в противном случае добавление элемента к элементу PropertyGroup.
Например, предположим, что нужно отключить по умолчанию применяются расширения функциональности setACL развертывания Visual Studio. По умолчанию наборы Visual Studio, считанных разрешения на корневой папке сайта назначения и записывает разрешения на папку App_Data. Если известно, что по умолчанию разрешения на папки верны и не должен быть задан можно отключить эту функциональности для конкретных публиковать профиль, добавив следующий код XML в файл профиля публиковать:
<IncludeSetACLProviderOnDestination>False</IncludeSetACLProviderOnDestination>
При открытии файла профиля публиковать он напоминает этот пример:
<Project ToolsVersion="4.0" xmlns="https://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <WebPublishMethod>Package</WebPublishMethod> <LaunchASiteUrlAfterPublish>False</LaunchASiteUrlAfterPublish> <SiteUrlToLaunchAfterPublish /> <MSDeployServiceURL /> <DeployIisAppPath /> <RemoteSitePhysicalPath /> <AllowUntrustedCertificate>False</AllowUntrustedCertificate> <SkipExtraFilesOnServer>True</SkipExtraFilesOnServer> <DeployAsIisApp>True</DeployAsIisApp> <MSDeployPublishMethod>WMSVC</MSDeployPublishMethod> <UserName /> <SavePWD>True</SavePWD> <PublishDatabaseSettings> <!— this section omitted to keep the example short --> </PublishDatabaseSettings> </PropertyGroup> </Project>
Чтобы отключить по умолчанию применяются расширения функциональности setACL добавьте элемент IncludeSetACLProviderOnDestination, как показано в данном примере, где он отображается сразу после открывающего тега PropertyGroup:
<Project ToolsVersion="4.0" xmlns="https://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <IncludeSetACLProviderOnDestination>False</IncludeSetACLProviderOnDestination> <WebPublishMethod>Package</WebPublishMethod> <LaunchASiteUrlAfterPublish>False</LaunchASiteUrlAfterPublish> <SiteUrlToLaunchAfterPublish /> <MSDeployServiceURL /> <DeployIisAppPath /> <RemoteSitePhysicalPath /> <AllowUntrustedCertificate>False</AllowUntrustedCertificate> <SkipExtraFilesOnServer>True</SkipExtraFilesOnServer> <DeployAsIisApp>True</DeployAsIisApp> <MSDeployPublishMethod>WMSVC</MSDeployPublishMethod> <UserName /> <SavePWD>True</SavePWD> <PublishDatabaseSettings> <!— this section omitted to keep the example short --> </PublishDatabaseSettings> </PropertyGroup> </Project>
Сохраните файл.
Старайтесь не изменять базу данных- связанные параметры в файле .pubxml, поскольку Visual Studio автоматически изменяет такие как он обнаруживает изменения в проекте. База данных- связанные параметры включают следующее:
Элемент PublishDatabaseSettings. (Этот элемент может встречаться в элемент PropertyGroup).
Все элементы ItemGroup, которые появляются после элемента PropertyGroup.
Создание файла .wpp.targets
Параметры, которые можно настроить в файле .wpp.targets применяются ко всем публикуют профили. В следующей процедуре поясняется, как создать файл .wpp.targets.
Создание файла .wpp.targets
Создайте новый XML-файл в папке проекта (той же папке, содержащей файл с расширением csproj или vbproj) и назовите его <projectname>.wpp.targets.
Создайте элемент Project как элемент верхнего уровня, и в создайте элемент PropertyGroup.
Добавьте параметры, которые необходимо задать для всех публиковать профили. Например, если требуется отключить по умолчанию применяются расширения функциональности setACL, добавьте элемент IncludeSetACLProviderOnDestination, как показано в следующем примере:
<?xml version="1.0" encoding="utf-8"?> <Project ToolsVersion="4.0" xmlns="https://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <IncludeSetACLProviderOnDestination>False</IncludeSetACLProviderOnDestination> </PropertyGroup> </Project>
Сохраните и закройте файл.
Закройте Visual Studio и повторно откройте его.
Поскольку Visual Studio кэширует файлы .targets изменения к одному из них могут не быть эффективно до тех пор, пока в следующий раз, когда Visual Studio будет открыто.
Можно также использовать файл .wpp.targets для расширения конвейер публикации через интернет в более сложных случаях. Например, может потребоваться сохранить расширение функциональности по умолчанию setACL только автоматизации параметр разрешения записи в другую папку в дополнение к App_Data. Описание, как сделать, см. Разрешения для папок параметра в Интернете публикуют в блоге Sayed Hashimi.
См. также
Основные понятия
Карта содержимого веб-развертывания для Visual Studio b ASP.NET