Как я могу получить IServiceProvider из библиотеки классов, в которой serviceProvider встроен в startup.cs? - PullRequest
0 голосов
/ 10 июля 2020

Я добавляю некоторые услуги в Startup.cs из Asp. Net Core Web. Это выглядит так:

public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddSingleton<IStaffService, StaffService>();

        var serviceProvider = services.BuildServiceProvider();
    }
 }

И теперь я знаю, что могу получить StaffService через serviceProvider.GetService<IStaffService>(), это выглядит так:

public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddSingleton<IStaffService, StaffService>();

        var serviceProvider = services.BuildServiceProvider();
        var staffService = serviceProvider.GetService<IStaffService>();
    }
 }

, но мне интересно, как можно Я получаю serviceProvider в новой библиотеке классов , чтобы я мог получить staffService в новой библиотеке классов вместо Startup.cs, может ли кто-нибудь мне помочь?

1 Ответ

0 голосов
/ 30 июля 2020

делать не нужно var serviceProvider = services.BuildServiceProvider (); фреймворк сделает это за вас при использовании вашего Startup.cs

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...