private static async Task EnsureSeedIDS4DataAsync(IDS4DbContext context, IServiceProvider sp)
        {
            var configuraion = sp.GetRequiredService <IConfiguration>();

            var endpoints = new Dictionary <string, string> {
                { "ids4adminui", configuraion.GetValue <string>("IDS4AdminUIEndpoint") },
                { "ids4adminapi", configuraion.GetValue <string>("IDS4AdminAPIEndpoint") },
            };

            if (!context.Clients.Any())
            {
                foreach (var client in Configuration.GetClients(endpoints))
                {
                    var entity = client.ToEntity();
                    await context.Clients.AddAsync(entity);
                }

                await context.SaveChangesAsync();
            }

            if (!context.IdentityResources.Any())
            {
                var identityResources = Configuration.GetIdentityResources().ToList();

                foreach (var resource in identityResources)
                {
                    await context.IdentityResources.AddAsync(resource.ToEntity());
                }

                await context.SaveChangesAsync();
            }

            if (!context.ApiResources.Any())
            {
                foreach (var resource in Configuration.GetApiResources().ToList())
                {
                    await context.ApiResources.AddAsync(resource.ToEntity());
                }

                await context.SaveChangesAsync();
            }
        }
Beispiel #2
0
 public Task <int> SaveChangesAsync()
 {
     return(DbContext.SaveChangesAsync());
 }
 public async Task <bool> CommitAsync()
 {
     return((await _dbContext.SaveChangesAsync()) > 0);
 }