我有一个 appsettings.json 和 appsettings.Development.json。我需要根据环境分配 SmtpServer 名称。
appsettings.json 中的配置文件是:
{
"EmailConfiguration": {
"SmtpServer": "mail.MYDOMAIN.com"
}
}
在 appsettings.Development.json 中是:
{
"EmailConfiguration": {
"SmtpServer": "mail.MYLOCAL.com"
}
}
当我在 Startup ConfigureServices() 中分配配置时,如下所示:
var emailconfig = Configuration.GetSection("EmailConfiguration").Get<EmailConfiguration>();
services.AddSingleton<IEmailConfiguration>(emailconfig);
它总是使用 appsettings.json ('mail.MYDOMAIN.com') 而不是 appsettings.Development.json。
如何修改此代码以使用正确的环境设置?
最佳答案
答案是我需要的只是 2 个不同 appsettings 文件中的环境变量。我的问题是我的配置设置之一中缺少右括号,这意味着 appsettings.Development.json 不会替换 appsettings.json 变量,因为它们不匹配。哎呀……
关于asp.net-core - 如何在代码中使用 appsettings.Development.json 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48066402/