Użycie msbuild do uruchomienia profilu publikowania systemu plików

Mam projekt c # .Net 4.0 utworzony przy użyciu VS2010 i teraz uzyskujący dostęp do VS2012.

Próbuję opublikować tylko potrzebne pliki z tej witryny do lokalizacji docelowej(C: buduje MyProject [Files])

Moja struktura plików: ./ProjectRoot/MyProject.csproj ./ProjectRoot/Properties/PublishProfiles/FileSystemDebug.pubxml

Korzystam z następujących funkcji za pośrednictwem MSBuild:

C: Windows Microsoft.NET Framework 4.0.30319 MSBuild.exe ./ProjectRoot/MyProject.csproj / p: DeployOnBuild = true /p:PublishProfile=./ProjectRoot/Properties/PublishProfiles/FileSystemDebug.pubxml

Oto xml w FileSystemDebug.pubxml

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>FileSystem</WebPublishMethod>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <SiteUrlToLaunchAfterPublish />
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <publishUrl>C:\builds\MyProject\</publishUrl>
    <DeleteExistingFiles>True</DeleteExistingFiles>
  </PropertyGroup>
</Project>

Wynikłe z tego zachowanie jest:

tworzony jest tutaj plik zip:./ProjectRoot/obj/Debug/Package/MyProject.zipNic nie jest stosowane<publishUrl>C:\builds\MyProject\</publishUrl> WTFtworzony plik zip to śniadanie dla świń i pełne plików, które nie są potrzebne do aplikacji.

Gdy uruchamiam ten profil publikowania przez studio wizualne, tworzony jest folder *C: build MyProject * i zawiera dokładne artefakty, które chcę.

Jak uzyskać ten prosty wynik z msbuild?

questionAnswers(6)

yourAnswerToTheQuestion