using Microsoft.AspNetCore.Identity; using Microsoft.Extensions.DependencyInjection; using Umbraco.Core.BackOffice; namespace Umbraco.Extensions { public static class IdentityBuilderExtensions { /// /// Adds a implementation for /// /// The type of the user manager to add. /// /// The current instance. public static IdentityBuilder AddUserManager(this IdentityBuilder identityBuilder) where TUserManager : UserManager, TInterface { identityBuilder.AddUserManager(); identityBuilder.Services.AddScoped(typeof(TInterface), typeof(TUserManager)); return identityBuilder; } /// /// Adds a implementation for /// /// /// /// /// public static IdentityBuilder AddSignInManager(this IdentityBuilder identityBuilder) where TSignInManager : SignInManager, TInterface { identityBuilder.AddSignInManager(); identityBuilder.Services.AddScoped(typeof(TInterface), typeof(TSignInManager)); return identityBuilder; } } }