在MSbuild构建我的解决方案(使用asp.net网站)之后,webdeployment项目已经构建并将网站放在目录_PublishedWebsites:
C:\ mybuilds \ buildName \ Daily_20090519.3 \ Release_PublishedWebsites \ MyWebsite
如何将其复制到IIS指向测试网站的固定目录?
我找到了很多代码片段,但我似乎无法找到一个会考虑到这个目录名称发生变化的事实。
答案 0 :(得分: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>
这是你在找什么?
我的书:Inside the Microsoft Build Engine : Using MSBuild and Team Foundation Build
答案 1 :(得分:1)
我正在使用不同的技术。
<PropertyGroup>
<BinariesRoot>c:\BinariesForIis\</BinariesRoot>
</PropertyGroup>
c:\BinariesForIis\
将用于直接输出编译的二进制文件(在复制到...\Daily_20090519.3\Release_
之前...)。