2009-05-21 83 views
2

的MSBuild後已建成我的解決方案(用一個asp.net網站),以及webdeployment項目已建成並投入目錄_PublishedWebsites網站:的MSBuild和_PublishedWebsites

C:\ mybuilds \ buildName \ Daily_20090519.3 \ Release_PublishedWebsites \ MyWebsite。

如何將其複製到IIS指向測試網站的固定目錄?

我發現了大量的代碼片段,但我似乎無法找到一個會考慮到這個目錄名稱發生變化的事實。

回答

1

這很簡單。您可以編輯項目並插入類似於以下內容的內容。

<PropertyGroup> 
    <OutputDest>$(MSBuildProjectDirectory)\..\OutputCopy\</OutputDest> 
</PropertyGroup> 
<Target Name="AfterBuild"> 
    <!-- Create an item with all the output files --> 
    <ItemGroup> 
    <_OutputFiles Include="$(OutputPath)**\*" Exclude="$(OutputPath)obj\**\*" /> 
    </ItemGroup> 
    <!-- You probably don't want to include the files in the obj folder so exclude them. --> 

    <Message Text="OutputDest : $(OutputDest)" /> 
    <Copy SourceFiles="@(_OutputFiles)" 
     DestinationFiles="@(_OutputFiles->'$(OutputDest)%(RecursiveDir)%(Filename)%(Extension)')"/> 
</Target> 

這是你在找什麼?

賽義德·易卜拉欣·哈希米

的My Book:Inside the Microsoft Build Engine : Using MSBuild and Team Foundation Build

+0

當你說'編輯項目'你的意思是網站項目,Web部署項目或TFSBuild.proj? – simon831 2009-05-22 09:26:40

1

我使用的是不同的技術。

<PropertyGroup> 
    <BinariesRoot>c:\BinariesForIis\</BinariesRoot> 
</PropertyGroup> 

c:\BinariesForIis\將被用於直接輸出編譯的二進制文件(副本前...\Daily_20090519.3\Release_ ...)。