无法从IServiceProvider .net核心解析

时间:2018-09-07 07:46:32

标签: dependency-injection .net-core

我在masstransit中注册了一些IServiceCollection使用者,但是我无法从IServiceProvider那里解决。

它是我的添加消费者方法。

 public static void Consumer(IServiceCollection serviceCollection)
 {
      serviceCollection.AddMassTransit(x => { x.AddConsumer<BookCommandHandler>(); });
      serviceCollection.AddScoped<BookCommandHandler>();
      serviceCollection.BuildServiceProvider();
 }

当我想解决时给我不要注册错误

  public static void ConfigureServices(IServiceCollection serviceCollection, IServiceProvider serviceProvider, IConfiguration configuration)
  {
     var xx = serviceProvider.GetRequiredService<BookCommandHandler>();
  }

我的错在哪里?

1 个答案:

答案 0 :(得分:0)

注册后,您可以通过ConfigureServices方法将其作为参数传递来访问该对象

public static void ConfigureServices(IServiceCollection serviceCollection, IConfiguration configuration, BookCommandHandler bcHandler)
{
    // use the class
    // bcHandler.
}