【问题标题】:How can I automatically set the application version and other such constants for a C# app in Azure Pipelines?如何在 Azure Pipelines 中为 C# 应用程序自动设置应用程序版本和其他此类常量?
【发布时间】:2021-01-20 14:49:51
【问题描述】:

在解决方案中每个项目的 AssemblyInfo.cs 中,我有这个:

[assembly: AssemblyInformationalVersion(AssemblySettings.ApplicationVersion)]

并且常量是在 AssemblySettings.cs 中的一个项目中定义的,如下所示:

public const string ApplicationVersion =
"2.21.01.01"
;

我的问题是,有没有办法在构建管道中自动设置这个常量(和其他常量),所以我不必在每次构建之前手动设置它?

这个特定常量的格式如下:V.YY.MM.vv 其中 V 是主要应用程序版本,YY 是年份的最后 2 位数字,MM 是月份,vv 是发布的序号月份(例如,01 表示当月的第一个版本)。

其他常量只是数字的字符串表示形式,每次发布都会增加一。

【问题讨论】:

  • 嗨,这个问题怎么样?下面的答案是否解决了您的问题?如果没有,请告诉我有关此问题的最新信息吗?

标签: c# azure-devops azure-pipelines azure-pipelines-build-task


【解决方案1】:

由于您的最后一部分不可用,您在获取格式时可能会遇到问题。不过你可以查看Configure run or build numbers

name: 2.$(Year:yy).$(Date:MM).$(Rev:.r)

steps:
  - script: echo '$(Build.BuildNumber)' 

我把$(Rev:.r) 放在最后,但这并不是你想要的。您可以使用变量组并在其中保留变量,每次运行都会递增,当您检测到新月份开始时,请重置此变量。

您可以使用该 puprose az pipelines variable-group variable update。文档here。为此,您还需要 Azure Cli 任务。

但是,如果您决定这样做,那么您需要自己创建变量(不是通过我的第一个示例)。

一旦你拥有它 - 你可以使用Assembly Info extension

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-25
    • 1970-01-01
    • 2015-07-14
    • 2019-05-13
    • 1970-01-01
    • 1970-01-01
    • 2015-06-06
    • 1970-01-01
    相关资源
    最近更新 更多