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

.NET Core 6.0如何让localhost使用appsettings.Development.json配置

解决.NET Core 6中Development环境未加载appsettings.Development.json的问题

以下是排查和解决的具体步骤:

  • 确认配置加载逻辑正确性
    .NET Core 6默认会自动加载appsettings.json和对应环境的配置文件,但如果手动修改过Program.cs的配置代码,需确保包含环境特定配置的加载逻辑:

    var builder = WebApplication.CreateBuilder(args);
    
    // 显式配置加载(若默认逻辑被修改时使用)
    builder.Configuration
        .SetBasePath(Directory.GetCurrentDirectory())
        .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
        .AddJsonFile($"appsettings.{builder.Environment.EnvironmentName}.json", optional: true, reloadOnChange: true)
        .AddEnvironmentVariables();
    

    默认模板生成的代码无需额外添加上述代码,但如果之前有改动,需检查是否遗漏了环境配置文件的加载。

  • 验证环境变量是否真正生效
    即使launchSettings.json中设置了ASPNETCORE_ENVIRONMENT=Development,也可能被系统环境变量覆盖。可在Program.cs中添加控制台输出确认当前环境:

    Console.WriteLine($"当前运行环境: {builder.Environment.EnvironmentName}");
    

    启动应用后查看控制台输出,若显示不是Development,需检查系统环境变量中是否存在同名变量,如有则修改或删除。

  • 检查appsettings.Development.json的格式与键名

    • 确保该文件的JSON格式无语法错误(如逗号遗漏、括号不匹配),格式错误会导致.NET忽略整个配置文件。
    • 确认数据库连接字符串的键名与appsettings.json完全一致,例如两者都使用ConnectionStrings:MyDb,键名不匹配会导致无法读取对应环境的配置值。
  • 确保配置文件被正确复制到输出目录
    右键项目 → 属性 → 生成 → 输出,将appsettings.Development.json的“复制到输出目录”设置为如果较新则复制或始终复制。之后清理项目(右键 → 清理)并重建,确保文件被同步到bin目录。

  • 确认启动配置选中正确
    在Visual Studio的启动配置下拉框中,确保选中的是launchSettings.json中配置的两个启动项之一,避免因选中其他配置导致环境变量未生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 05:03:16