在我的 .NET Core 3.1 WebApi 项目中,我首先读取环境变量并根据它加载 appsettings.json:
public static IHostBuilder CreateHostBuilder(string[] args)
{
string environment = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT");
...
}
但我不知道如何在 .NET 6 中阅读它:
var builder = WebApplication.CreateBuilder(args);
build.Environment 无法读取。
有谁知道吗?
谢谢
最佳答案
我想延长 the accepted answer有点,因为它只引用一个链接。
也可以将环境变量读入强类型配置类。
即,看看这个类:
public class MyConfig
{
public string ValueA { get; set; }
public int ValueB { get; set; }
}
我们还假设环境变量设置为 MySection__ValueA
和 MySection__ValueB
。
如果您将配置类注册为:
services.Configure<MyConfig>("MySection");
然后您将能够访问代码中的配置值:
public class SomeService
{
public SomeService(IOptions<MyConfig> config)
{
// Here config.Value.ValueA is equal to MySection__ValueA
// and config.Value.ValueB is equal to MySection__ValueB (automatically converted to int)
}
关于asp.net - 如何在 .NET 6 中读取环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70024170/