我有一个包含30多个项目的解决方案......是否有一种快速简便的方法来管理所有项目的构建版本,而不是编辑每个项目的AssemblyInfo或Properties?
答案 0 :(得分:7)
过去,我已按照this article中的建议在解决方案级别创建 SharedAssemblyInfo.cs 文件,并从我的每个项目链接到该文件。
重点是您要将 SharedAssemblyInfo.cs 文件作为链接添加到项目中。在Visual Studio中,您将选择“添加现有项”,但在对话框中,单击“添加”按钮上的箭头并选择“添加为链接”。
在 SharedAssemblyInfo.cs 中,在所有项目中放置您想要相同的任何程序集属性。本文建议如下:
AssemblyCompany
AssemblyProduct
AssemblyCopyright
AssemblyTrademark
AssemblyConfiguration
AssemblyDescription
CLSCompliant
ComVisible
AssemblyVersion
AssemblyInformationalVersion
每个项目仍然有自己的 AssemblyInfo.cs 文件,以补充从共享文件中收到的属性:
AssemblyTitle
AssemblyCulture
Guid
答案 1 :(得分:1)
我建议使用AssemblyInfo任务,
http://archive.msdn.microsoft.com/AssemblyInfoTaskvers
[更新:它是来自Microsoft MSBuild团队的MSBuild目标。不需要Visual Studio插件,因此即使您直接使用MSBuild也能正常工作。]
您可以使用其目标来修改中心AssemblyInfo.cs文件,然后将其链接到所有项目。我的开源项目#SNMP展示了它的使用方式,
答案 2 :(得分:1)
通常这应该只是一个评论,但我想把它作为答案
VS的这个插件是一个真正的救命稻草 Versioning Controlled Build
我非常喜欢这个插件,我在VS 2003版本中使用它 只需注意并阅读所有文章,安装其他插件时会有一些小问题
虽然接受的答案非常好,但我仍然希望每个项目都有一个单独的assemblyinfo.cs,其中包含 FileVersion 和 AssemblyVersion 属性,因为,这样,当有错误修复或分发修订
时,我可以单独增加这些值