使用DotNet(Core / Standrad)时,我如何在构建时使用项目版本?

默克尔·格鲁特(Merkle Groot)

我可以通过将标签添加到.csproj文件来设置项目版本,但是我想在管道中以编程方式更改该值。

我凑在一起编写了一个脚本来完成该任务,但是感觉很草率。

那一定是通过CLI做到这一点的一种方法,但我只是没有找到它。

有没有我要忽略的与此类似的命令?

dotnet build -project-version 1.2.3

如果不存在任何命令,您如何设置管道中的项目构建版本?

乔尔·弗莱希曼

我在管道中使用以下内容。

dotnet build -p:VersionPrefix="$(buildNumber)" -p:VersionSuffix="$(buildPipline)"

在我的csproj文件中

 <PropertyGroup>
    ...
    <VersionPrefix>1.0.1</VersionPrefix>
    <VersionSuffix>local</VersionSuffix>
  </PropertyGroup>

要获取代码中的版本号,我使用以下代码

public static string Version => System.Reflection.Assembly.GetEntryAssembly().GetCustomAttribute<System.Reflection.AssemblyInformationalVersionAttribute>().InformationalVersion;

如果您使用的是Azure管道,则可以添加一个powershell脚本,该脚本根据日期和时间声明版本。

 Write-Host "Generating Build Number"
$baseDate = [datetime]"01/01/2019"
$currentDate = [System.TimeZoneInfo]::ConvertTimeBySystemTimeZoneId((Get-Date), 'Eastern Standard Time')
$interval = NEW-TIMESPAN –Start $baseDate –End $currentDate
$days = $interval.Days
$hour = $currentDate.ToString("HH")
$minute = $currentDate.ToString("mm")

$version = "1.0.$days.$hour$minute"
$version_npm = "1.$days.$($currentDate.ToString("Hmm"))"
if($currentDate.ToString("HH") -eq "00")
{
    $version_npm = "1.$days.25$($currentDate.ToString("mm"))"
}
Write-Host "Version: $version"
Write-Host "npm Version: $version_npm"

Write-Host "##vso[task.setvariable variable=buildNumber]$version"
Write-Host "##vso[task.setvariable variable=buildNumber_npm]$version_npm"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我如何使emacs-jedi使用项目特定的virtualenvs

来自分类Dev

使用Gradle构建项目时如何获取实现版本

来自分类Dev

尝试构建项目时使用msbuild异常

来自分类Dev

构建qmake项目时如何使用C ++ 14功能?

来自分类Dev

使用Gradle构建Cordova项目时覆盖Java版本

来自分类Dev

您如何在dotnet Core中使用DBContext

来自分类Dev

您可以使用dotnet core构建/运行的最简单的应用程序是什么?

来自分类Dev

使用postgres的dotnet core 2.2 EntityFramework

来自分类Dev

当使用`dotnet build`或`dotnet publish`时如何为参考项目指定构建配置?

来自分类Dev

如何在Angular Material中使用项目组件

来自分类Dev

无法在Dotnet Core 3.0中使用Redis缓存

来自分类Dev

使用MSBuild构建gRPC dotnet核心项目时如何包括自定义目录

来自分类Dev

使用HttpClient在Mac上的dotnet core应用程序中使用Network Creds

来自分类Dev

如何使用Dotnet Core获取Redis上的密钥的到期时间?

来自分类Dev

在使用Http.sys和URLPrefix时,如何配置dotnet core 3来提供React SPA?

来自分类Dev

如何使用C#(dotnet core 3.1)进行OAuth 1 Twitter API调用

来自分类Dev

如何使用“ dotnet”工具构建.sqlproj项目?

来自分类Dev

使用dotnet core \ c#删除GCP Spanner实例

来自分类Dev

使用Grunt构建时,如何在index.html中插入版本号?

来自分类Dev

使用Gradle构建项目时如何获取实现版本

来自分类Dev

如何在我的Android项目中使用其他API版本作为构建目标?

来自分类Dev

使用dotnet CLI构建和运行ASP.NET Core WebAPI

来自分类Dev

使用项目宏时如何提高循环性能?

来自分类Dev

在openstack4j中使用项目范围身份验证时,如何获取项目ID?

来自分类Dev

您如何在dotnet Core中使用DBContext

来自分类Dev

如何使用 .bat 文件构建和运行 dotnet 核心项目?

来自分类Dev

如何在 EF Core / Dotnet Core 中进行查询而不使用连接

来自分类Dev

如何在gridview中正确使用项目点击

来自分类Dev

我们如何配置 dotnet core react 应用程序以使用 multientry?

Related 相关文章

  1. 1

    我如何使emacs-jedi使用项目特定的virtualenvs

  2. 2

    使用Gradle构建项目时如何获取实现版本

  3. 3

    尝试构建项目时使用msbuild异常

  4. 4

    构建qmake项目时如何使用C ++ 14功能?

  5. 5

    使用Gradle构建Cordova项目时覆盖Java版本

  6. 6

    您如何在dotnet Core中使用DBContext

  7. 7

    您可以使用dotnet core构建/运行的最简单的应用程序是什么?

  8. 8

    使用postgres的dotnet core 2.2 EntityFramework

  9. 9

    当使用`dotnet build`或`dotnet publish`时如何为参考项目指定构建配置?

  10. 10

    如何在Angular Material中使用项目组件

  11. 11

    无法在Dotnet Core 3.0中使用Redis缓存

  12. 12

    使用MSBuild构建gRPC dotnet核心项目时如何包括自定义目录

  13. 13

    使用HttpClient在Mac上的dotnet core应用程序中使用Network Creds

  14. 14

    如何使用Dotnet Core获取Redis上的密钥的到期时间?

  15. 15

    在使用Http.sys和URLPrefix时,如何配置dotnet core 3来提供React SPA?

  16. 16

    如何使用C#(dotnet core 3.1)进行OAuth 1 Twitter API调用

  17. 17

    如何使用“ dotnet”工具构建.sqlproj项目?

  18. 18

    使用dotnet core \ c#删除GCP Spanner实例

  19. 19

    使用Grunt构建时,如何在index.html中插入版本号?

  20. 20

    使用Gradle构建项目时如何获取实现版本

  21. 21

    如何在我的Android项目中使用其他API版本作为构建目标?

  22. 22

    使用dotnet CLI构建和运行ASP.NET Core WebAPI

  23. 23

    使用项目宏时如何提高循环性能?

  24. 24

    在openstack4j中使用项目范围身份验证时,如何获取项目ID?

  25. 25

    您如何在dotnet Core中使用DBContext

  26. 26

    如何使用 .bat 文件构建和运行 dotnet 核心项目?

  27. 27

    如何在 EF Core / Dotnet Core 中进行查询而不使用连接

  28. 28

    如何在gridview中正确使用项目点击

  29. 29

    我们如何配置 dotnet core react 应用程序以使用 multientry?

热门标签

归档