public interface IOptionsMonitorCustom<out TOptions> : Microsoft.Extensions.Options.IOptionsMonitor<TOptions>
public class OptionsMonitorCustom<TOptions> : Microsoft.Extensions.Options.OptionsMonitor<TOptions>, IOptionsMonitorCustom<TOptions>
public OptionsMonitorCustom(
System.Diagnostics.CodeAnalysis.AllowNull
] Microsoft.Extensions.Options.IOptionsFactory<
System.Diagnostics.CodeAnalysis.AllowNull
] System.Collections.Generic.IEnumerable<
Microsoft.Extensions.Options.IOptionsChangeTokenSource<
> changeTokens = default,
System.Diagnostics.CodeAnalysis.AllowNull
] Microsoft.Extensions.Options.IOptionsMonitorCache<
factory ?? GetOptionsMonitorFactory( ),
changeTokens ?? GetOptionsChangeTokenSources( ),
cache ?? GetOptionsCache( )
public static Microsoft.Extensions.Options.IOptionsFactory<
> GetOptionsMonitorFactory( )
System.Collections.Generic.List<
Microsoft.Extensions.Options.ConfigureOptions<
System.Collections.Generic.List<
Microsoft.Extensions.Options.PostConfigureOptions<
> postConfigures = new ( ) { };
Microsoft.Extensions.Options.OptionsFactory<
postConfigures: postConfigures
public static System.Collections.Generic.List<
Microsoft.Extensions.Options.IOptionsChangeTokenSource<
> GetOptionsChangeTokenSources( )
System.Collections.Generic.List<
Microsoft.Extensions.Options.IOptionsChangeTokenSource<
public static Microsoft.Extensions.Options.OptionsCache<
Microsoft.Extensions.Options.OptionsCache<
public static void Main( )
IOptionsMonitorCustom<object> objectOptionsMonitor = new OptionsMonitorCustom<object>( ) { };
IOptionsMonitorCustom<string> stringOptionsMonitor = new OptionsMonitorCustom<string>( ) { };
System.Console.WriteLine("Before OptionsMonitor implicit casting via Covariance.\r\n");
objectOptionsMonitor = stringOptionsMonitor;
System.Console.WriteLine("After OptionsMonitor implicit casting via Covariance.\r\n");