首页 > 解决方案 > 构建任务 VSBuild@1 未正确构建 .Net Framework 4 Web 应用程序 (aspx)

问题描述

我正在尝试为使用.net framework 4并且是aspx页面 Web 应用程序的旧项目配置 ci/cd。我正在使用VSBuild@1任务通过以下配置构建它:

在此处输入图像描述

它正确地构建它。但问题是它也将/App_GlobalResources根级别放置。而当我在我的 Visual Studio 上本地发布它时,它根本不会生成这个文件夹。因此,当我尝试部署artifact从 VSBuild@1 生成的任务时,会出现以下错误,并且应用程序将无法启动/运行:

不允许使用目录“/App_GlobalResources/”,因为该应用程序已预编译

如果我从服务器上的已部署文件夹中手动删除此文件夹,则该应用程序可以正常工作。但是.resx文件中新添加的资源没有被编译。即,它们根本不存在,因此每当尝试访问此类资源密钥时应用程序都会崩溃。

问题:我该如何解决这个问题?构建任务应该产生这样一个工件,它不应该在主级别包含 /App_GlobalResources 文件夹。并且里面的资源文件也应该被构建。

(第一次遇到这种类型的错误,可能是我解释的不好,欢迎大家提问,我会相应地提供更多细节)

标签: asp.netmsbuildcontinuous-integrationazure-pipelinescontinuous-deployment

解决方案


The directory '/App_GlobalResources/' is not allowed because the application is precompiled

以上错误是预编译站点引起的常见问题。您可以尝试删除该PrecompiledApp.config文件并重新启动您的应用程序。

这是一个有类似问题的案例,您可以参考。


推荐阅读