【问题标题】:Copy App_GlobalResources on deployment在部署时复制 App_GlobalResources
【发布时间】:2026-01-06 00:45:02
【问题描述】:

我有一个以前使用 VS2008 的发布功能发布的 ASP.NET Web 应用程序。

最近我切换到 VS2008 的“Web 部署项目”。部署时,我注意到 ~/App_GlobalResources 目录不再复制到构建时的发布文件夹。

如何确保 App_GlobalResources 目录被复制?

【问题讨论】:

    标签: asp.net deployment resources


    【解决方案1】:

    Web 部署项目使用aspnet_compiler.exe。引用自documentation

    这些文件被编译成 组件并放置在 Bin 目录。没有 App_GlobalResources 在主目录下创建子目录 输出目录。如果配置 文件指定 applyTo="All", .resx 和 .resources 文件被复制到 输出目录。他们不是 如果它们被 a 引用,则复制它们 构建提供者。

    所有资源都编译成程序集并放入bin文件夹。这就是 Web 部署项目的设计方式。

    【讨论】:

    • 嗨,我在哪里可以指定属性 applyTo="All"?目前部署的应用程序。给出除外。 “未找到类名为 'adminNav' 和键 'Default' 的资源对象。”在 GetExplicitResourceString。使用web部署项目时globalresources默认不工作正常吗?
    【解决方案2】:

    不应复制 app_globalresources 目录。在 Web 部署项目的属性页中,我必须检查“视为库组件”。

    这确保生成了一个deployment.resources.dll,以前不是这样。

    【讨论】: