C# 查询Azure Web应用程序版本号

C# 查询Azure Web应用程序版本号,c#,asp.net-mvc,azure,azure-devops,azure-web-app-service,C#,Asp.net Mvc,Azure,Azure Devops,Azure Web App Service,我们正在使用VST部署到Azure Web应用程序插槽。我们想要一种方法,让网站知道其版本号的目的 我们考虑在发布过程中将VSTS构建设置为环境变量,因为Azure Web App网站可以访问该环境变量 我们还注意到,在向VSTS发布之前,VSTS会警告您您正在再次发布同一版本,因此VSTS一定有办法查询Azure Web App 是否有一种标准的方法可以从网站内部了解构建版本 如果没有,除了在发布期间使用环境变量之外,还有更好的查询版本号的方法吗 如果您只想在web应用程序中使用内部版本号(

我们正在使用VST部署到Azure Web应用程序插槽。我们想要一种方法,让网站知道其版本号的目的

我们考虑在发布过程中将VSTS构建设置为环境变量,因为Azure Web App网站可以访问该环境变量

我们还注意到,在向VSTS发布之前,VSTS会警告您您正在再次发布同一版本,因此VSTS一定有办法查询Azure Web App

  • 是否有一种标准的方法可以从网站内部了解构建版本
  • 如果没有,除了在发布期间使用环境变量之外,还有更好的查询版本号的方法吗

如果您只想在web应用程序中使用内部版本号(例如在页面中显示),可以将内部版本号存储在配置文件中,例如web.config、appsettings.json,然后读取代码中的值

要在配置文件中存储内部版本号,可以在内部版本定义中使用before visual studio build task

如果要在其他任务中使用内部版本号,例如将当前内部版本号与当前应用程序服务内部版本号进行比较,则可以将内部版本号存储在azure应用程序服务的AppSettings中。简单工作流程:

  • 添加azure PowerShell任务以调用Get-AzureRMWebAppSlot以获取应用设置并与当前版本号进行比较
  • 如果它们不同,您可以通过azure WebApp部署任务将包部署到azure
  • 添加azure PowerShell任务以调用Set-AzureRMWebAppSlot更新应用设置 这里有一个博客:

    顺便说一句:您可以通过build/Release中的变量获取当前版本号