public static void UseAdminSeeding(this IApplicationBuilder app) { using (var serviceScope = app.ApplicationServices.CreateScope()) { var adminSeeder = new AdminSeeder(serviceScope.ServiceProvider); adminSeeder.Seed(); } }
public static void SeedDatabase(this IServiceProvider serviceProvider, string password = "******", string emailDomain = "ssrd.io", string adminUserName = "******", string adminPassword = "******") { SystemEntitySeeder systemEntitySeeder = serviceProvider.GetRequiredService <SystemEntitySeeder>(); AdminSeeder adminSeeder = serviceProvider.GetRequiredService <AdminSeeder>(); UserSeeder userSeeder = serviceProvider.GetRequiredService <UserSeeder>(); Task.WaitAll(systemEntitySeeder.SeedIdentityUI()); Task.WaitAll(adminSeeder.SeedIdentityAdmin(adminUserName, adminPassword)); Task.WaitAll(userSeeder.Seed(emailDomain, password)); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IWebHostEnvironment env, AdminSeeder seeder) { using (var serviceScope = app.ApplicationServices.GetService <IServiceScopeFactory>().CreateScope()) { var context = serviceScope.ServiceProvider.GetRequiredService <RentCarWebContext>(); context.Database.EnsureCreated(); } seeder.SeedAdminUser(); if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } else { app.UseExceptionHandler("/Error"); // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. app.UseHsts(); } app.UseSwagger(); app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1"); }); app.UseHttpsRedirection(); app.UseStaticFiles(); app.UseSpaStaticFiles(); app.UseRouting(); app.UseAuthentication(); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllerRoute( name: "default", pattern: "{controller}/{action=Index}/{id?}"); endpoints.MapRazorPages(); }); app.UseSpa(spa => { spa.Options.SourcePath = "ClientApp"; if (env.IsDevelopment()) { spa.UseReactDevelopmentServer(npmScript: "start"); } }); }
public static void ApplyMigrations(this IApplicationBuilder app) { using var services = app.ApplicationServices.CreateScope(); var dbContext = services.ServiceProvider.GetService <ApplicationDbContext>(); var userManager = services.ServiceProvider.GetService <UserManager <User> >(); dbContext.Database.Migrate(); RolePermissionSeeder.Run(dbContext); AdminSeeder.RunAsync(userManager).GetAwaiter().GetResult(); JobTypeSeeder.Run(dbContext); JobCategorySeeder.Run(dbContext); }
public static void Main(string[] args) { var host = CreateWebHostBuilder(args).Build(); using (var scope = host.Services.CreateScope()) { var services = scope.ServiceProvider; var context = services.GetRequiredService <ApplicationDbContext>(); AdminSeeder.SeedDatabase(context, services).Wait(); CategorySeeder.SeedDatabase(context).Wait(); ProductSeeder.SeedDatabase(context).Wait(); } Directory.SetCurrentDirectory(AppContext.BaseDirectory); host.Run(); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env, UserManager <UserEntityModel> userManager) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } else { app.UseExceptionHandler("/Home/Error"); // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. app.UseHsts(); } app.UseHttpsRedirection(); app.UseSwagger(); app.UseSwaggerUI(setupAction => { setupAction.SwaggerEndpoint("/swagger/MiniBankSpecification/swagger.json", "Mini Bank"); }); app.UseStaticFiles(); app.UseCookiePolicy(); app.UseAuthentication(); //app.UseRequestResponseLoggerMiddleware(); app.UseSignalR(routes => { routes.MapHub <ChatHub>("/chatHub"); }); app.UseMvc(routes => { routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}"); routes.MapRoute( name: "Identity", template: "{area:exists}/{controller=Account}/{action=Login}"); }); AdminSeeder.SeedAdmin(userManager); }
/// <summary> /// Seeds admin /// </summary> /// <param name="serviceProvider"></param> /// <param name="userName"></param> /// <param name="password"></param> /// <param name="roles"></param> public static void SeedAdmin(this IServiceProvider serviceProvider, string userName, string password, List <string> roles) { AdminSeeder adminSeeder = serviceProvider.GetRequiredService <AdminSeeder>(); Task.WaitAll(adminSeeder.Seed(userName, password, roles)); }
/// <summary> /// Seeds identityAdmin /// </summary> /// <param name="serviceProvider"></param> /// <param name="userName"></param> /// <param name="password"></param> private static void SeedIdentityAdmin(this IServiceProvider serviceProvider, string userName, string password) { AdminSeeder adminSeeder = serviceProvider.GetRequiredService <AdminSeeder>(); Task.WaitAll(adminSeeder.SeedIdentityAdmin(userName, password)); }