public ReloadingSender(string name, Func <TSenderOptions, ISender> createSender, IOptionsMonitor <TSenderOptions> optionsMonitor, Action <TSenderOptions>?configureOptions) { Name = name; CreateSender = createSender; ConfigureOptions = configureOptions; var options = optionsMonitor.GetOptions(Name, configureOptions); Sender = CreateSender.Invoke(options); ChangeListener = optionsMonitor.OnChange(OptionsMonitorChanged); }