Команда MsBuild игнорирует местоположение в профиле публикации - PullRequest
0 голосов
/ 20 ноября 2018

У меня есть решение VS 2012 с сайтом asp.net mvc c #, и я использую его профиль публикации с помощью команды msbuild.На моем локальном компьютере файлы публикуются в каталог, указанный в профиле публикации, но на сервере они идут в каталог bin проекта.

Через MSBuild я запускаю следующее:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe C:\WebSites\EMS.sln  /p:Configuration=Release /p:DeployOnBuild=true /p:VisualStudioVersion=14.0  /p:AllowUntrustedCertificate=true /p:PublishProfile=C:\WebSites\EMSMVC\Properties\PublishProfiles\EMS_Auto.pubxml

Вот профиль публикации:

<?xml version="1.0" encoding="utf-8"?>
<!--
This file is used by the publish/package process of your Web project. You can customize the behavior of this process
by editing this MSBuild file. In order to learn more about this please visit http://go.microsoft.com/fwlink/?LinkID=208121. 
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>FileSystem</WebPublishMethod>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <Configuration>Release</Configuration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <SiteUrlToLaunchAfterPublish />
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
    <ExcludeFoldersFromDeployment>
      Images
    </ExcludeFoldersFromDeployment>
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <publishUrl>C:\Apps\NEW_PUBLISH</publishUrl>
    <DeleteExistingFiles>True</DeleteExistingFiles>
  </PropertyGroup>
</Project>

Мы используем .NET Framework 4.5;Версия IIS на моем ПК - 7,5;Visual studio 12, Premium edition.

Любая помощь очень ценится.

1 Ответ

0 голосов
/ 27 ноября 2018

Я не уверен, является ли это универсальным решением, но я видел нечто подобное здесь на сайте, использовал его, и это решило нашу проблему: поскольку Visual Studio, используемая для редактирования и развертывания в локальной среде, как я уже упоминал, VS2012 или версии 11, я должен скопировать папку Web из локальной папки C: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v11.0 \ Web в папку на сервере: C: \ Program Files (x86) \ MSBuild \ Microsoft\ VisualStudio \ v14.0 \ (была только папка WebApplications) и теперь работает нормально.

...