如何在Visual C#项目之间同步版本?

Lou*_*ron 7 c# sync build version project

我的解决方案中有三个项目:基础项目,以及引用基础的客户端和服务器.

我想做的是能够设置基础项目文件的程序集版本,并将其自动传播到服务器和客户端,以便它们的版本始终匹配.理想情况下,这将是一个同步它们的预构建步骤.

有谁知道这是否可行或我将如何这样做?

Joe*_*eau 8

我们所做的与克里斯的答案非常相似:

我们有一个名为的项目ProductVersion,其中"Product"实际上是产品名称.Inside是一个静态类VersionInformation,它包含一个常量字符串,包括一个被调用的字符串ProductVersion,这是我们实际设置版本信息的地方.

然后在每个项目的AssemblyInfo.cs文件中,我们的AssemblyVersion行看起来像这样:

[assembly: AssemblyVersion(Company.Product.VersionInformation.ProductVersion)]
Run Code Online (Sandbox Code Playgroud)

在您的情况下,由于客户端和服务器都引用基础项目,您可以在基础项目中包含类似的内容,而不是创建单独的项目.


Chr*_*ris 6

将版本信息移动到解决方案根目录中的单独文件(例如AssemblyVersion.cs)中.然后从每个项目的AssemblyInfo.cs文件中删除版本信息,并将共享的AssemblyVersion文件作为链接添加到每个项目.

  1. 右键单击该项目,单击"添加现有项"
  2. 浏览到共享文件,单击"添加"按钮上的小箭头,然后选择"添加为链接"
  3. 将生成的文件拖到每个项目中的Properties文件夹中.
  4. ???
  5. 利润!