在我作为TeamCity的一部分自动构建的单个解决方案中,我有几个AssemblyInfo.cs文件作为许多项目的一部分。
为了使msbuild脚本更易于维护,我希望能够结合ItemGroup使用AssemblyInfo社区任务。
<ItemGroup>
<AllAssemblyInfos Include="..\**\AssemblyInfo.cs" />
</ItemGroup>
<AssemblyInfo AssemblyTitle="" AssemblyProduct="$(Product)" AssemblyCompany="$(Company)" AssemblyCopyright="$(Copyright)"
ComVisible="false" CLSCompliant="false" CodeLanguage="CS" AssemblyDescription="$(Revision)$(BranchName)"
AssemblyVersion="$(FullVersion)" AssemblyFileVersion="$(FullVersion)" OutputFile="@(AllAssemblyInfos)" />这显然不起作用,因为OutputFile不能是被引用的ItemGroup。
有人知道怎么做吗?
发布于 2008-09-22 17:28:49
尝试将@更改为%,如下所示
<ItemGroup>
<AllAssemblyInfos Include="..\**\AssemblyInfo.cs" />
</ItemGroup>
<AssemblyInfo AssemblyTitle="" AssemblyProduct="$(Product)" AssemblyCompany="$(Company)" AssemblyCopyright="$(Copyright)"
ComVisible="false" CLSCompliant="false" CodeLanguage="CS" AssemblyDescription="$(Revision)$(BranchName)"
AssemblyVersion="$(FullVersion)" AssemblyFileVersion="$(FullVersion)" OutputFile="%(AllAssemblyInfos)" />这将为AllAssemblyInfos中的每个条目创建一个调用。
也可以看看这篇文章,应该会有所帮助。
http://blogs.msdn.com/aaronhallberg/archive/2006/09/05/msbuild-batching-generating-a-cross-product.aspx
发布于 2008-09-22 17:14:53
我们在项目中使用“链接”文件。解决方案资源管理器->添加现有项-> ..select_file ..-> arrow_on_left_of_add_button ->添加为链接
则选定的文件(目前为AssemblyInfo.cs )不会复制到项目的目录中,bud仅从指定的路径链接。
https://stackoverflow.com/questions/116140
复制相似问题