// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public async void Configure(IApplicationBuilder app, IHostingEnvironment env, UserManager <User> userManager, RoleManager <Role> roleManager, ILogger <Startup> logger, ChatContext dbContext, IGuideService guideService) { app.Use(async(context, next) => { await next(); if (context.Response.StatusCode == 404 && !Path.HasExtension(context.Request.Path.Value) && !context.Request.Path.Value.StartsWith("/api/")) { context.Request.Path = "/index.html"; await next(); } }); await roleManager.SeedRoles(logger); await userManager.SeedUserRoles(logger); await dbContext.SeedScenarios(guideService, logger); app.UseAuthentication(); app.UseCors("MyPolicy"); app.UseWebSockets(); app.UseSignalR(routes => { routes.MapHub <MessageHub>("/message"); routes.MapHub <TrainingHub>("/training"); }); app.UseMvcWithDefaultRoute(); app.UseDefaultFiles(); app.UseStaticFiles(); }