Ejemplo n.º 1
0
        private void MigrateDatabase(IApplicationBuilder app)
        {
            var genreConfiguration = Configuration.GetSection("Genre").Get <GenreConfiguration>();
            var userConfiguration  = Configuration.GetSection("User").Get <UserConfiguration>();
            var movieConfiguration = Configuration.GetSection("Movie").Get <MovieConfiguration>();
            //var movieGenreConfiguration = Configuration.GetSection("MovieGenre").Get<MovieGenreConfiguration>();
            var permissionConfiguration     = Configuration.GetSection("Permission").Get <PermissionConfiguration>();
            var reservationConfiguration    = Configuration.GetSection("Reservation").Get <ReservationConfiguration>();
            var roomConfiguration           = Configuration.GetSection("Room").Get <RoomConfiguration>();
            var roomPlanConfiguration       = Configuration.GetSection("RoomPlan").Get <RoomPlanConfiguration>();
            var scheduleConfiguration       = Configuration.GetSection("Schedule").Get <ScheduleConfiguration>();
            var scheduleSlotConfiguration   = Configuration.GetSection("ScheduleSlot").Get <ScheduleSlotConfiguration>();
            var seatTypeConfiguration       = Configuration.GetSection("SeatType").Get <SeatTypeConfiguration>();
            var seatPositionConfiguration   = Configuration.GetSection("SeatPosition").Get <SeatPositionConfiguration>();
            var locationConfiguration       = Configuration.GetSection("Location").Get <LocationConfiguration>();
            var roomAssignmentConfiguration = Configuration.GetSection("RoomAssignment").Get <RoomAssignmentConfiguration>();
            var roomTechnologyConfiguration = Configuration.GetSection("RoomTechnology").Get <RoomTechnologyConfiguration>();

            using (var serviceScope = app.ApplicationServices.GetService <IServiceScopeFactory>().CreateScope())
            {
                var context = serviceScope.ServiceProvider.GetRequiredService <DatabaseContext>();
                context.Database.Migrate();

                GenreSeed.Seed(context, genreConfiguration.Genres);
                UserSeed.Seed(context, userConfiguration.Users);
                PermissionSeed.Seed(context, permissionConfiguration.Permissions);
                SeatTypeSeed.Seed(context, seatTypeConfiguration.SeatTypes);
                LocationSeed.Seed(context, locationConfiguration.Locations);
                RoomTechnologySeed.Seed(context, roomTechnologyConfiguration.RoomTechnologies);
            }
        }
Ejemplo n.º 2
0
        public async void Init(IServiceCollection services)
        {
            services.AddDbContext <LocationDbContext>();

            services.AddScoped <LocationService>();

            var dbContext = services.BuildServiceProvider().GetService <LocationDbContext>();

            var pendingMigrations = dbContext.Database.GetPendingMigrations();

            if (!pendingMigrations.Any())
            {
                var locationSeed = new LocationSeed();
                await locationSeed.SeedAsync(dbContext);
            }
        }