0
我有项目,我在启动类读取JSON文件配置配置:如何覆盖在MVC核心
services.Configure<ApplicationConfiguration>(
Configuration.GetSection("ApplicationConfiguration"));
我想从数据库中新值覆盖此。
public MyClass(IOptions<ApplicationConfiguration> applicationConfiguration,)
{
applicationConfiguration = new DbApplicationConfiguration();
}
DbApplicationConfiguration类:
public class DbApplicationConfiguration : IOptions<ApplicationConfiguration>
{
public ApplicationConfiguration Value
{
get
{
var configuration = new ApplicationConfiguration();
configuration.Host = "myHost";
// ...
return configuration;
}
}
}
这是工作,但只有在MyClass的。 我想覆盖容器中的配置。 因此,每次我注入IOptions<ApplicationConfiguration>
我都会得到新的覆盖值。
我需要有可能更新配置页面上的配置。 我想避免在每个注入IOption的类中更改接口。
这可能吗?
要么写一个自定义的'ConfigurationProvider'来读取和返回数据库中的数据。或者在'Startup.cs'中明确地覆盖这些值。请参阅https://docs.asp.net/en/latest/fundamentals/configuration.html#example-entity-framework-settings – haim770