【发布时间】:2022-08-20 02:03:13
【问题描述】:
WebAppllicationBuilder 构建 Configuration 并默认添加一些提供程序,例如:
- “appsettings.json”的 JsonConfigurationProvider 或
- “secrets.json”的 JsonConfigurationProvider
它们添加了参数 optional: true
我需要 \"appsettings.json\" 是必需的,而不是可选的。当然,我可以添加额外的 json 文件提供程序并使用新设置再次映射相同的文件。但是,如果有办法修改默认提供程序并将其中一个设置为可选,代码会更好看:false。
var builder = WebApplication.CreateBuilder(args);
builder.Configuration
.AddJsonFile(\"appsettings.json\", optional: false, reloadOnChange: true)
// here I need to add \"secrets.json\" again, because secrets are loaded by
// default json provider but overwritten by above
// .AddUserSecrets<Program>(optional: true)
// (I put the same key in both files, just marked \"from-secrets\" in \"appsettings.json\" to indicate what is needed)
.AddEnvironmentVariables(\"whatever_\");
如何修改默认提供者的选项?
马立克
标签: c# asp.net-core