private static async Task InitUsersAsync( IServiceScope serviceScope, IEnumerable <TestUser> testUsers = null ) { var uowProvider = serviceScope.ServiceProvider.GetRequiredService <IUowProvider>(); var userManager = serviceScope.ServiceProvider.GetRequiredService <UserManager <ApplicationUser> >(); if ((testUsers != null) && (!DynamicQueryableExtensions.Any(userManager.Users))) { foreach (var inMemoryUser in testUsers) { var identityUser = new ApplicationUser(inMemoryUser.Username); userManager.CreateAsync(identityUser, inMemoryUser.Password).Wait(); userManager.AddToRoleAsync(identityUser, SystemRoleTypes.SuperAdmin.ToString()).Wait(); using (var uow = uowProvider.CreateUnitOfWork()) { var userRepository = uow.GetRepository <UserProfile, string>(); await userRepository.AddAsync(new UserProfile { Id = identityUser.Id, FirstName = "SuperAdmin", MiddleName = "SuperAdmin", LastName = "SuperAdmin", Email = "*****@*****.**" } ); await uow.SaveChangesAsync(); } } } }
private static async Task InitIdentityServerAsync( IServiceScope serviceScope, IEnumerable <Client> initialClients = null, IEnumerable <ApiResource> initialApiResources = null, IEnumerable <IdentityResource> initialIdentityResources = null ) { serviceScope.ServiceProvider.GetRequiredService <CoreManageDbContext>().Database.Migrate(); var grantContext = serviceScope.ServiceProvider.GetRequiredService <PersistedGrantDbContext>(); try { await grantContext.Database.MigrateAsync(); } catch (System.NotImplementedException) { grantContext.Database.Migrate(); } var configContext = serviceScope.ServiceProvider.GetRequiredService <ConfigurationDbContext>(); try { await configContext.Database.MigrateAsync(); } catch (System.NotImplementedException) { configContext.Database.Migrate(); } // intitial clients if ((initialClients != null) && (!DynamicQueryableExtensions.Any(configContext.Clients))) { foreach (var client in initialClients) { var c = client.ToEntity(); configContext.Clients.Add(c); } await configContext.SaveChangesAsync(); } // intitial apiResources if ((initialApiResources != null) && (!DynamicQueryableExtensions.Any(configContext.ApiResources))) { foreach (var scope in initialApiResources) { var s = scope.ToEntity(); configContext.ApiResources.Add(s); } await configContext.SaveChangesAsync(); } // intitial identityResources if ((initialIdentityResources != null) && (!DynamicQueryableExtensions.Any(configContext.IdentityResources))) { foreach (var scope in initialIdentityResources) { var s = scope.ToEntity(); configContext.IdentityResources.Add(s); } await configContext.SaveChangesAsync(); } }
private static async Task InitRolesAsync(IServiceScope serviceScope) { var roleManager = serviceScope.ServiceProvider.GetRequiredService <RoleManager <ApplicationRole> >(); if (!DynamicQueryableExtensions.Any(roleManager.Roles)) { await roleManager.CreateAsync(new ApplicationRole(SystemRoles.SuperAdmin, (int)SystemRoleTypes.SuperAdmin)); await roleManager.CreateAsync(new ApplicationRole(SystemRoles.GroupAdmin, (int)SystemRoleTypes.SuperAdmin)); await roleManager.CreateAsync(new ApplicationRole(SystemRoles.TenantAdmin, (int)SystemRoleTypes.GroupAdmin)); await roleManager.CreateAsync(new ApplicationRole(SystemRoles.DashboardAdmin, (int)SystemRoleTypes.TenantAdmin)); // (Module/ApiClient) } }
public static bool AnyInterpolated(this IQueryable source, FormattableString predicate) { var predicateStr = ParseFormattableString(predicate, out var args); return(DynamicQueryableExtensions.Any(source, predicateStr, args)); }