如何正确激活使用ServiceCollection.Configure函数添加的配置?

     public static void Main(args[] args)
     {
        serviceCollection = new ServiceCollection();
        serviceCollection .Configure<MyOptions>(Configuration.GetSection("options"));
        Services = serviceCollection.BuildServiceProvider();

        ActivatorUtilities.CreateInstance<MyOptions>(Services);
        ActivatorUtilities.CreateInstance<SomeClassThatNeedsoptions>(Services);
     }


 public SomeClassThatNeedsoptions(IOptions<MyOptions> options)
 {
     _options = options.Value;
 }


在第二个ActivatorUtilities.CreateInstance上,我收到以下错误


  无法解析“ Microsoft.Extensions.Options.IOptions [MyOptions]”类型的服务


我在控制台应用程序中编写此代码,据我了解,我是使用ActivatorUtilities类手动注入依赖项的。我似乎能够使用AddSingleton添加的服务来做到这一点,但不能使用.Configure添加的服务来做到这一点。

最佳答案

实例化ServiceCollection后尝试立即添加

serviceCollection.AddOptions();

10-04 11:53