即使启用了重新加载,选项也不会在请求期间发生变化。但是,听起来你实际上提出了一个新请求并发现选项仍然没有改变。
我个人没有遇到过我需要使用的场景 IOptionsMonitor<TOptions> 特别。但是,我知道它在内部使用缓存并具有手动功能来使所述缓存中的选项无效。它实际上可能不会在更改时自动重新加载 - 不确定。
IOptionsMonitor<TOptions>
无论如何,它更典型地使用 IOptionsSnapshot<TOptions> 代替。这仅用于为每个请求重新加载选项,因此它似乎满足您的需求。唯一的好处 IOptionsMonitor<TOptions> 似乎是它能够实际监视变化并通知回调。再一次,我没有用足够的东西来判断你是否只是做错了什么,但我不认为你 其实 无论如何需要这个。
IOptionsSnapshot<TOptions>