asp.net - 构建任务 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 文件夹。并且里面的资源文件也应该被构建。
(第一次遇到这种类型的错误,可能是我解释的不好,欢迎大家提问,我会相应地提供更多细节)
解决方案
The directory '/App_GlobalResources/' is not allowed because the application is precompiled
以上错误是预编译站点引起的常见问题。您可以尝试删除该PrecompiledApp.config
文件并重新启动您的应用程序。
这是一个有类似问题的案例,您可以参考。
推荐阅读
- c# - 无法在 MVC 中上传文件
- python-3.x - Python pandas:统一来自 CSV 输入的日期时间列格式
- html - ui-bootstrap datetime-picker 将 show-meridian 定义为 false
- excel - 处理不正确的密码运行时错误
- json - 如何从 Cosmos DB 导出数据
- c# - WebApi Core 中的 WebSocket IsWebSocketRequest 为 False
- scala - 如何查看已写入的文档数量并正确处理错误?
- angular - 带 Ionic 框架的锁设备
- php - WordPress 钩子函数的代码应该放在哪里?
- java - 如何将某个位置的整数数组传递给slidingdotsplash库?