Я пытаюсь развернуть экземпляр Identity Server на основе http://docs.identityserver.io/en/latest/quickstarts/8_aspnet_identity.html и использую код из https://github.com/IdentityServer/IdentityServer4/tree/master/samples/Quickstarts/8_AspNetIdentity в качестве шаблона, но у меня возникают проблемы с получением начальных данных.
У меня есть мои program.cs и startup.cs в соответствии с примером приложения.Когда я вызываю
var userMgr = scope.ServiceProvider.GetRequiredService<UserManager<IdentityUser>>();
из метода SeedData.EnsureSeedData
, который следует после
var services = new ServiceCollection();
services.AddDbContext<ApplicationDbContext>(options => options.UseSqlServer(connectionString));
services.AddIdentity<IdentityUser, IdentityRole>().AddEntityFrameworkStores<ApplicationDbContext>().AddDefaultTokenProviders();
using var serviceProvider = services.BuildServiceProvider();
using var scope = serviceProvider.GetRequiredService<IServiceScopeFactory>().CreateScope();
var context = scope.ServiceProvider.GetService<ApplicationDbContext>();
context.Database.Migrate();
var userMgr = scope.ServiceProvider.GetRequiredService<UserManager<IdentityUser>>();
, я получаю следующую ошибку.
Unable to resolve service for type 'Microsoft.Extensions.Logging.ILogger`1[Microsoft.AspNetCore.Identity.UserManager`1[Microsoft.AspNetCore.Identity.IdentityUser]]' while attempting to activate 'Microsoft.AspNetCore.Identity.UserManager`1[Microsoft.AspNetCore.Identity.IdentityUser]'.
Как мне зарегистрировать услуги для ILogger<UserManager<IdentityUser>>>
?
Я чувствую, что упускаю что-то очевидное, но не вижу, что это такое.