.net core可以通过代码更新配置吗?应该怎么去做?
想在代码里修改配置(基于IConfiguration)并保存,不知道是否可行
从appSettings.json里读配置,然后在ConfigureService里注入AppSettings,就可以在其它地方引用,这是一般的使用方法
你也可以把appSettings.json里的信息保存到其它地方,比如redis、数据库,变更配置后修改被注入的AppSettings对象即可,你还得在ConfigureServices里加载AppSettings
en ,我也有想到做基于Redis做一个 ConfigurationProvider,不知道性能会怎么样,另外redis发生修改的话是否要主动推送到客户端?
@WeihanLi: 如果是分布式部署的话,你还需要rabbitmq,定义一个 AppSettingsChangedEvent以及AppSettingsChangedEventHandler,所有程序都监听这个消息并绑定handler,收到消息后在handler中处理reload settings,建议在把AppSettingsChangedEvent及handler抽出来放到一个公共的project中
@南昌炒粉: 其实我想要是这样的,可以直接一个接口重新从配置源中加载配置 https://www.cnblogs.com/weihanli/p/reload-app-configuration-in-aspnetcore.html
https://www.cnblogs.com/artech/p/new-config-system-08.html
先读取.json配置文件,转成对象,修改对象的属性值以后重新加载配置
这样要保存到文件才行,而且可能我改的只是一个配置还要把别的配置组合成json,不好操作,看来是没有现成的api去做这件事情了
能否详细描述一下
– dudu 6年前