Как внедрить UserManager в метод ConfigureServices файла startup.cs? - PullRequest
0 голосов
/ 20 февраля 2019

Как передать экземпляр UserManager в вызываемую службу PhysicalFileAttachmentService?

вот коды

public class PhysicalFileAttachmentService : IFileAttachmentService {
    private readonly ILogger<PhysicalFileAttachmentService> _logger;

    private readonly string _contentRootPath;
    private readonly UserManager<ApplicationUser> _userManager;
    public PhysicalFileAttachmentService(ILogger<PhysicalFileAttachmentService> logger, string contentRootPath, UserManager<ApplicationUser> userManager)
    {
        _logger = logger;
        _contentRootPath = contentRootPath;
        _userManager = userManager;
    } }

public void ConfigureServices(IServiceCollection services) {
    services.AddSingleton<IFileAttachmentService>(s => new PhysicalFileAttachmentService(s.GetService<ILogger<PhysicalFileAttachmentService>>(), s.GetService<IHostingEnvironment>().ContentRootPath, ?? )); }

1 Ответ

0 голосов
/ 20 февраля 2019

Привет, вы должны сначала внедрить другие сервисы, которые передаются в качестве параметра для конструктора, как это

services.AddLogging(configure => configure.AddConsole())
  .AddTransient<iuserrepository>(sp => new UserRepository(connectionString, sp.GetService<ilogger<userrepository>>()))

, прежде чем внедрять эти сервисы в PhysicalFileAttachmentService, надеюсь, что вы получите идею из кода

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