我有一个appsettings.json和appsettings.Development.json。我需要根据环境分配SmtpServer名称。
appsettings.json中的配置文件为:
{
"EmailConfiguration": {
"SmtpServer": "mail.MYDOMAIN.com"
}
}
Run Code Online (Sandbox Code Playgroud)
在appsettings.Development.json中是:
{
"EmailConfiguration": {
"SmtpServer": "mail.MYLOCAL.com"
}
}
Run Code Online (Sandbox Code Playgroud)
当我像这样在Startup ConfigureServices()中分配配置时:
var emailconfig = Configuration.GetSection("EmailConfiguration").Get<EmailConfiguration>();
services.AddSingleton<IEmailConfiguration>(emailconfig);
Run Code Online (Sandbox Code Playgroud)
它始终使用appsettings.json('mail.MYDOMAIN.com'),而不使用appsettings.Development.json。
如何修改此代码以使用正确的环境设置?
答案是我需要的只是 2 个不同 appsettings 文件中的环境变量。我的问题是我的配置设置之一中缺少右括号,这意味着 appsettings.Development.json 不会替换 appsettings.json 变量,因为它们不匹配。哎呀……
| 归档时间: |
|
| 查看次数: |
3387 次 |
| 最近记录: |