ASP.NET Core通过ASPNETCORE_ENVIRONMENT变量管理多环境配置,支持Development、Staging、Production三种默认环境,该变量决定加载对应appsettings.{Environment}.json文件;可在操作系统、launchSettings.json、Docker/K8s、Web服务器中设置;自定义环境变量可通过IConfiguration读取,且优先级高于配置文件;结合appsettings.json分层管理配置,敏感信息推荐由环境变量注入;在Program.cs或Startup.cs中使用IWebHostEnvironment的IsDevelopment()等方法判断当前环境并启用相应中间件,实现灵活安全的配置管理。

ASP.NET Core 提供了灵活的方式来管理不同运行环境下的配置,环境变量是其中关键的一环。应用通过环境变量 ASPNETCORE_ENVIRONMENT 来识别当前运行环境,常见的值有 Development、Staging 和 Production。
这个变量决定了应用加载哪个环境特定的配置文件,比如 appsettings.Development.json 或 appsettings.Production.json。你可以在多个地方设置它:
除了框架级别的环境标识,你还可以在代码中读取自定义环境变量,用于数据库连接、密钥等配置:
IConfiguration configuration = new ConfigurationBuilder()
.AddEnvironmentVariables()
.Build();
string myVar = configuration["MY_CUSTOM_VAR"];如果使用默认的主机构建方式(如 CreateDefaultBuilder),环境变量源已经自动添加,可直接通过 IConfiguration 实例访问。
推荐将配置分层管理:
例如,数据库连接字符串在开发环境用本地地址,生产环境通过环境变量提供,避免硬编码。
在 Startup.cs 或 Program.cs 中,可以通过 IWebHostEnvironment 判断环境:
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Error");
}支持的方法有 IsDevelopment()、IsStaging()、IsProduction(),便于控制中间件行为。
基本上就这些。合理利用环境变量,能让应用在不同阶段安全、灵活地运行。
以上就是ASP.NET Core 中的环境变量如何管理?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号