// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env) { using (KorepetycjeContext context = new KorepetycjeContext()) { context.Database.Migrate(); } if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); DatabaseSeed.Initialize(app.ApplicationServices.GetRequiredService <IServiceScopeFactory>().CreateScope().ServiceProvider); } else { app.UseHsts(); } app.UseHttpsRedirection(); app.UseAuthentication(); app.UseCors(CorsConfiguration.CorsPolicyName); app.UseMvc(); app.UseSwagger(); SwaggerConfiguration.RegisterUi(app); }
public async Task Initialize_ShouldCreateAUser() { var optionsBuilder = new DbContextOptionsBuilder <WebApiCoreSeedContext>(); optionsBuilder.UseInMemoryDatabase("GetByIdAsync_ShouldReturnUser"); using (var dbContext = new WebApiCoreSeedContext(optionsBuilder.Options)) { DatabaseSeed.Initialize(dbContext); Assert.Equal(1, await dbContext.Users.CountAsync()); } }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory, WebApiCoreSeedContext dbContext) { loggerFactory.AddConsole(Configuration.GetSection("Logging")); loggerFactory.AddDebug(); var jwtOptions = new JwtBearerOptions { Audience = Configuration["auth0:clientId"], Authority = $"https://{Configuration["auth0:domain"]}/", }; app.UseMiddleware(typeof(ErrorHandlingMiddleware)); app.UseMiddleware(typeof(AuthorizationMiddleware)); app.UseJwtBearerAuthentication(jwtOptions); app.UseMvc(); DatabaseSeed.Initialize(dbContext); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory, WebApiCoreSeedContext dbContext) { loggerFactory.AddConsole(Configuration.GetSection("Logging")); loggerFactory.AddDebug(); app.UseMiddleware(typeof(ErrorHandlingMiddleware)); app.UseMiddleware(typeof(AuthorizationMiddleware)); app.UseSwagger(); // Enable middleware to serve Swagger UI (HTML, JS, CSS, etc.), specifying the Swagger JSON endpoint. app.UseSwaggerUI(c => { // Sets Swagger UI route on root, "GET {baseUrl}/". c.RoutePrefix = string.Empty; c.SwaggerEndpoint("/swagger/v1/swagger.json", ".NET Core API Seed"); }); app.UseMvc(); DatabaseSeed.Initialize(dbContext); }
public static void Main(string[] args) { var host = CreateWebHostBuilder(args).Build(); using (var scope = host.Services.CreateScope()) { var services = scope.ServiceProvider; try { var context = services.GetRequiredService <PeopleContext>(); DatabaseSeed.Initialize(context); } catch (Exception ex) { var logger = services.GetRequiredService <ILogger <Program> >(); logger.LogError(ex, "An error occurred while seeding the database."); } } host.Run(); }