You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Web App部署未按ASPNETCORE_ENVIRONMENT配置选择appsettings.json

问题解决方案

根因说明

你遇到的是Azure App Service部署ASP.NET Core应用时环境特定配置文件不加载的典型问题,在已确认ASPNETCORE_ENVIRONMENT环境变量正确设置的前提下,问题基本出自以下两类原因:

  1. 构建产出的发布包中未包含appsettings.Production.json文件
  2. 自定义的主机配置逻辑覆盖了默认的环境配置文件加载规则

排查&修复步骤

  • 第一步:验证发布包内容
    下载Azure DevOps构建任务产出的MyWebApi.zip包,解压后检查应用根目录下是否存在appsettings.Production.json文件
    • 若文件不存在:
      检查项目csproj配置,确保appsettings.Production.json的发布规则配置正确,示例配置如下:
      <ItemGroup>
        <Content Update="appsettings.*.json">
          <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
          <CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
        </Content>
      </ItemGroup>
      
      同时确认构建任务没有额外的过滤规则排除了Production后缀的配置文件。
    • 若文件存在:
      检查Program.cs/Startup.cs中的主机构建逻辑,确保显式加载了环境特定的配置文件,.NET 6+的正确配置示例如下:
      var builder = WebApplication.CreateBuilder(args);
      // 如果你手动修改了默认配置构建逻辑,需要补加以下规则
      builder.Configuration
          .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
          .AddJsonFile($"appsettings.{builder.Environment.EnvironmentName}.json", optional: true, reloadOnChange: true)
          .AddEnvironmentVariables();
      
  • 第二步:排查App Service特殊配置
    检查App Service应用设置中WEBSITE_LOAD_USER_PROFILE参数是否为1,该参数被修改为0时会导致环境变量读取异常,无法正确识别当前运行环境。

你贴出的Azure DevOps部署任务本身没有配置错误,不需要修改。

内容的提问来源于stack exchange,提问作者user232548

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 15:24:06