如何解决外部库设置的 ASP.NET Core 运行时动态配置?
在我的服务中,我一直遵循 docs 使用 IOptionsMonitor
为我的服务设置运行时配置。我现在所做的工作可以很好地进行运行时配置更新:
class MySettings {
//settings...
}
class Startup {
//...
public void ConfigureServices(IServiceCollection services) {
services.Configure<MySettings>(Configuration);
services.AddSingleton<SomeSingleton>();
//... more configuration
}
}
class SomeSingleton {
public SomeSingleton(IOptionsMonitor<MySettings> optionsMonitor) {
//constructor...
}
}
在上面的示例中,SomeSingleton
能够成功查看来自我的配置提供程序的运行时更新。但是现在假设我想注册两个外部(即不可编辑)类:
class ExternalClassOne {
public ExternalClassOne(ExternalClassOnesettings settings) {
//constructor...
}
}
class ExternalClasstwo {
public ExternalClassOne(IOptions<ExternalClasstwoSettings> settings) {
//constructor...
}
}
假设 ExternalClassOnesettings
和 ExternalClasstwoSettings
是只有公共 get/set
属性的类,是否可以为单例注册启用对 ExternalClassOnesettings
和 ExternalClasstwoSettings
的运行时更新ExternalClassOne
/ExternalClasstwo
中的一个或两个?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。