// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IStockCrawlerService stockCrawler, IWebHostEnvironment env, ApplicationDbContext dbContext, SeedData seeder) { app.UseMiddleware(typeof(VisitorCounterMiddleware)); if (true || env.IsDevelopment()) { app.UseDeveloperExceptionPage(); app.UseDatabaseErrorPage(); } 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.UseSwagger(); app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1"); }); app.UseHangfireDashboard("/thf"); //RecurringJob.AddOrUpdate(() => stockCrawler.CrawlerVNDirectStockInformation(), "0 5 * * *"); app.UseHttpsRedirection(); app.UseStaticFiles(); app.UseRouting(); app.UseAuthentication(); app.UseAuthorization(); seeder.Initialize().Wait(); app.UseEndpoints(endpoints => { endpoints.MapControllerRoute( name: "default", pattern: "{controller=Home}/{action=Index}/{id?}"); endpoints.MapRazorPages(); endpoints.MapHangfireDashboard(); endpoints.MapHub <SignalRHub>("/signalrHub"); }); }
public StockController(IStockCrawlerService stockCrawler, IRepositoryWrapper repositoryWrapper) { _stockCrawler = stockCrawler; _repositoryWrapper = repositoryWrapper; }