private static async Task EnsureSeedData <TDbContext>(IServiceProvider services)
            where TDbContext : DbContext
        {
            using var scope = services.GetRequiredService <IServiceScopeFactory>().CreateScope();

            //Identity Seed
            var userManager      = scope.ServiceProvider.GetRequiredService <IUserManager>();
            var roleManager      = scope.ServiceProvider.GetRequiredService <IRoleManager>();
            var usuarioDbContext = scope.ServiceProvider.GetRequiredService <TDbContext>();
            await IdentitySeed.EnsureSeedData(usuarioDbContext, userManager, roleManager);
        }
Example #2
0
        /**
         * dotnet ef migrations add InitialCreate --context SitPostgreSQLContext --output Data/Migrations/SitDb
         *  dotnet ef migrations script --context SitPostgreSQLContext
         *
         *
         * Add-Migration SitDbInit -context SitPostgreSQLContext -output Data/Migrations/SitDb
         * Add-Migration EventSourcingDbInit -context EventStoreEventSourcingContext -output Data/Migrations/EventSourcingDb
         **/

        private static async Task EnsureSeedData <TSitContext>(IServiceProvider services)
            where TSitContext : DbContext
        {
            using var scope = services.GetRequiredService <IServiceScopeFactory>().CreateScope();
            //AdministraĆ§Ć£o Pessoa Seed.
            //var adminPessoaDbContext = scope.ServiceProvider.GetRequiredService<TSitContext>();
            //await AdministracaoPessoaSeed.EnsureSeedData(adminPessoaDbContext);

            //Identity Seed
            // var userManager = scope.ServiceProvider.GetRequiredService<IUserManager>();
            // var roleManager = scope.ServiceProvider.GetRequiredService<IRoleManager>();
            // var dbContext = scope.ServiceProvider.GetRequiredService<TSitContext>();

            await PermissionSeed.EnsureSeedData <TSitContext>(services);

            await IdentitySeed.EnsureSeedData <TSitContext>(services);

            await PessoaSeed.EnsureSeedData <TSitContext>(services);
        }