我有一个.NET Core MVC应用程序,它是使用TFS在线构建的,并使用TFS在线的发布管理内容发布到Azure。一切都很好。
我想做的是让我的应用程序在某处显示内部版本号。无论在哪里......但是例如在像/ api / buildversion这样的WebAPI端点中。
任何人都可以帮助我如何在运行时获取TFS内部版本号?打包/发布应用程序时,是否有任何文件包含我可以从应用程序访问的内部版本号?
答案 0 :(得分:7)
简单的方法是您可以将内部版本号存储在一个文件中(例如appsettings.json),然后在应用代码中获取此数据。
Appsettings.json示例代码:
{
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=aspnet-WebApplication1-ab933d83-8f4b-4024-9f3c-1aef5339a8f3;Trusted_Connection=True;MultipleActiveResultSets=true"
},
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
}
}
"CodeVersion": {
"Num": "#{MyBuildNumber}#"
}
}
答案 1 :(得分:2)
您需要在编译时将Build Number保存在应用程序中。
您可以使用$ Build.BuildNumber或$ Env:BUILD_BUILDNUMBER访问内部版本号,具体取决于您的环境。我通常将它作为变量写入我的ApplicationInfo。*中,包含版本号和内部版本号。
答案 2 :(得分:2)
比添加更多插件和库更简单。如果您使用的是Web / app部署方法,请展开文件转换和文件转换。变量 DEMO
假设您要在appsettings.json
中更新说明内部版本号值超级简单。这与Octopus IIRC中的步骤大致相同。