C# 如何访问服务中的选项对象。配置<;MyOptions>;在DotNet核心依赖注入中?

C# 如何访问服务中的选项对象。配置<;MyOptions>;在DotNet核心依赖注入中?,c#,.net,.net-core,dependency-injection,C#,.net,.net Core,Dependency Injection,我对依赖注射还比较陌生。我有以下代码: static void Main(string[] args) { var hostBuilder = new HostBuilder() .UseConsoleLifetime() .ConfigureServices((hostContext, services) => {

我对依赖注射还比较陌生。我有以下代码:

 static void Main(string[] args)
        {
            
            var hostBuilder = new HostBuilder()
               .UseConsoleLifetime()
               .ConfigureServices((hostContext, services) =>
               {
                   services.AddFtpServer(opt => opt.UseDotNetFileSystem()).AddHostedService<HostedFtpService>();
                   services.AddSingleton<IMembershipProvider, CustomMembershipProvider>();
                   services.Configure<FtpServerOptions>(opt => opt.Port = 33999);
                });
            var host = hostBuilder.Build();

            var Item1 = host.Services.GetService<IMembershipProvider>(); //This works, I can get the new CustomMembershipProvider Object
            var Item2 = host.Services.GetService<FtpServerOptions>(); //This does NOT work....


        }
尝试这样做:

var Item2 = host.Services.GetService<IOptions<FtpServerOptions>>(); 

酷它的作品,但也有IOptionsMonitor,这可能是一个我需要的。谢谢
var Item2 = host.Services.GetService<IOptions<FtpServerOptions>>(); 
var  options = Item2.Value