Razor Azure DevOps部署并不总是覆盖cshtml文件

Razor Azure DevOps部署并不总是覆盖cshtml文件,razor,azure-devops,azure-web-app-service,azure-pipelines,azure-pipelines-tasks,Razor,Azure Devops,Azure Web App Service,Azure Pipelines,Azure Pipelines Tasks,有时,当我们进行部署时,最后提交的扩展名为cshtml的文件不会更新。我们没有看到其他类型的文件没有更新。可能是文件正在使用中,无法覆盖。是否可以在部署过程中添加一个额外的步骤以避免出现这种情况?这很奇怪。如果您使用Azure管道中的Azure应用程序服务部署任务部署到您的Web应用程序,您可以选择删除目标位置的其他文件。启用此选项将删除Azure应用程序服务中的文件,这些文件在正在部署的应用程序服务工件包或文件夹中没有匹配的文件 基于,还有其他有用的附加部署选项,如: 重命名锁定的文件:通过

有时,当我们进行部署时,最后提交的扩展名为cshtml的文件不会更新。我们没有看到其他类型的文件没有更新。可能是文件正在使用中,无法覆盖。是否可以在部署过程中添加一个额外的步骤以避免出现这种情况?

这很奇怪。如果您使用Azure管道中的Azure应用程序服务部署任务部署到您的Web应用程序,您可以选择删除目标位置的其他文件。启用此选项将删除Azure应用程序服务中的文件,这些文件在正在部署的应用程序服务工件包或文件夹中没有匹配的文件

基于,还有其他有用的附加部署选项,如:

  • 重命名锁定的文件:通过在Azure应用程序服务设置中启用msdeploy标志
    msdeploy\u Rename\u locked\u files=1来重命名web服务器仍在使用的任何文件。如果设置了此选项,则msdeploy可以重命名在应用程序部署期间锁定的文件。通过这种方式,您可以避免使用中出现
    ERROR\u FILE\u
    错误而导致部署失败

  • 使应用程序脱机:选择此选项可通过在同步操作开始之前将
    App_Offline.htm
    文件放置在根目录中,使Azure应用程序服务脱机。同步成功完成后,将删除该文件

将这些部署到位可以优化部署并使其更加健壮。以下是任务的完整参考: