繁体   English   中英

有没有办法修改解决方案中的所有项目?

[英]Is there a way to revision all projects in a solution?

我有一个包含30多个项目的解决方案......是否有一种快速简便的方法来管理所有项目的构建版本,而不是编辑每个项目的AssemblyInfo或Properties?

在过去,我遵循本文中的建议,在解决方案级别创建SharedAssemblyInfo.cs文件,并从我的每个项目链接到该文件。

重点是您要将SharedAssemblyInfo.cs文件作为链接添加到项目中。 在Visual Studio中,您将选择“添加现有项”,但在对话框中,单击“添加”按钮上的箭头并选择“添加为链接”。

SharedAssemblyInfo.cs中 ,在所有项目中放置您希望相同的任何程序集属性。 本文建议如下:

  • AssemblyCompany
  • AssemblyProduct
  • AssemblyCopyright
  • AssemblyTrademark
  • AssemblyConfiguration
  • AssemblyDescription
  • CLSCompliant
  • ComVisible
  • AssemblyVersion
  • AssemblyInformationalVersion

每个项目仍然有自己的AssemblyInfo.cs文件,以补充它从共享文件接收的属性:

  • AssemblyTitle
  • AssemblyCulture
  • Guid

我建议使用AssemblyInfo Task,

http://archive.msdn.microsoft.com/AssemblyInfoTaskvers

[更新:它是来自Microsoft MSBuild团队的MSBuild目标。 不需要Visual Studio插件,因此即使您直接使用MSBuild也能正常工作。

您可以使用其目标来修改中央AssemblyInfo.cs文件,然后将其链接到所有项目。 我的开源项目#SNMP展示了它的使用方式,

https://github.com/lextm/sharpsnmplib

通常这应该只是一个评论,但我想作为答案给出这个

这个VS的插件是一个真正的救星版Versioning Controlled Build

我非常喜欢这个插件,我在VS 2003版本中使用它。
只需注意并阅读所有文章,安装其他插件时会有一些小问题

虽然接受的答案非常好,但我仍然希望每个项目都有一个包含FileVersionAssemblyVersion属性的分离的assemblyinfo.cs,因为这样,当有错误修复时,我可以单独递增这些值。分发修订

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM