// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IWebHostEnvironment env, DataContext context, ILoggerFactory loggerFactory) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.UseCors(builder => builder .AllowAnyOrigin() .AllowAnyMethod() .AllowAnyHeader() ); app.UseHttpsRedirection(); app.UseRouting(); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); DBInitialize.Initialize(context: context); app.UseProblemDetailsExceptionHandler(loggerFactory); ConfigureSwagger(app, env); }
public void Configure(IApplicationBuilder app, IHostingEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); DBInitialize.Initialize(app); } if (env.IsStaging()) { // code to be executed in staging environment } if (env.IsProduction()) { // code to be executed in production environment } #region Swagger app.UseSwagger(); app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "OnionArchitecture API"); c.RoutePrefix = string.Empty; }); #endregion app.UseAuthentication(); app.UseMvc(); }
// 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) { loggerFactory.AddConsole(Configuration.GetSection("Logging")); loggerFactory.AddDebug(); if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); app.UseBrowserLink(); } else { app.UseExceptionHandler("/Home/Error"); } app.UseStaticFiles(); app.UseMvc(routes => { routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}"); }); DBInitialize.EnsureCreated(app.ApplicationServices); }
// 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, DatabaseContext context, UserManager <User> userManager, RoleManager <IdentityRole> roleManager) { loggerFactory.AddConsole(Configuration.GetSection("Logging")); loggerFactory.AddDebug(); if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); app.UseBrowserLink(); } else { app.UseExceptionHandler("/Home/Error"); } app.UseIdentity(); app.UseStaticFiles(); app.UseMvc(routes => { routes.MapRoute( name: "default", template: "{controller=Login}/{action=Login}/{id?}"); }); DBInitialize.Initialize(context, userManager, roleManager); }
private void Button_注册_Click(object sender, RoutedEventArgs e) { string registerCode = TextBox_注册.Text.Trim().ToUpper(); UsbController usb = new Helper.Tools.UsbController(); string date = DateTime.Now.ToString("yyyyMMdd"); string orginCode = "StoneAnt.PA" + date + usb.getSerialNumberFromDriveLetter(); string validateCode = Secure.GetMD5_32(orginCode).ToUpper(); if (registerCode.Equals(validateCode)) { rg.UpdateSoftwareVersionStatus((int)ENUM.EM_SOFTWARESTATE.已注册); rg.UpdateSoftwareRegisterCode(registerCode); //注册后加密数据库 DBInitialize.ChangeDBPassword(); xw.WriteXML("注册", "true"); MessageBoxCommon.Show("注册成功!"); this.LoadPage(); Grid_Register.Visibility = Visibility.Collapsed; } else { MessageBoxCommon.Show("注册码不准确,请联系开发商!"); } }
private void Button_解密_Click(object sender, RoutedEventArgs e) { DBInitialize.ClearPassword(); File.Copy(DBInitialize.dataSource, "Data\\DataWithoutPassword.db", true); new XMLWriter().WriteXML("注册", "false"); DBInitialize.ChangeDBPassword(); new XMLWriter().WriteXML("注册", "true"); Log.Write("成功拷贝机密文件"); MessageBoxCommon.Show("拷贝成功!"); }
// 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, IPCS.Repositories.Context.IPCSContext context, UserManager <User> userManager) { loggerFactory.AddConsole(Configuration.GetSection("Logging")); loggerFactory.AddFile(Configuration.GetSection("LoggingFile")); loggerFactory.AddDebug(); if (string.IsNullOrWhiteSpace(env.WebRootPath)) { env.WebRootPath = System.IO.Path.Combine(Directory.GetCurrentDirectory(), "wwwroot"); } UseIdentityServerAuthenticationOptions opt = new UseIdentityServerAuthenticationOptions(); Configuration.GetSection("UseIdentityServerAuthenticationOptions").Bind(opt); app.UseIdentityServerAuthentication(new IdentityServerAuthenticationOptions { Authority = opt.Authority, ApiName = opt.ApiName, RequireHttpsMetadata = opt.RequireHttpsMetadata, AutomaticAuthenticate = opt.AutomaticAuthenticate, AutomaticChallenge = opt.AutomaticChallenge, RoleClaimType = ClaimTypes.Role, EnableCaching = opt.EnableCaching, AuthenticationScheme = opt.AuthenticationScheme, SupportedTokens = IdentityServer4.AccessTokenValidation.SupportedTokens.Jwt, JwtBearerEvents = new CustomJwtBearerEvents() }); app.UseCors("CorsPolicy"); app.UseMvc(); var pathUploadProjectFolder = Path.Combine(env.WebRootPath, "upload", "project"); if (!Directory.Exists(pathUploadProjectFolder)) { Directory.CreateDirectory(pathUploadProjectFolder); } app.UseStaticFiles(new StaticFileOptions() { FileProvider = new PhysicalFileProvider( Path.Combine(env.WebRootPath, "upload", "project")), RequestPath = new PathString("/project") }); DBInitialize.Seed(context, userManager, Configuration.GetValue <bool>("SEED")); }
// 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, IPCSOAuthContext context, UserManager <User> userManager) { loggerFactory.AddConsole(Configuration.GetSection("Logging")); loggerFactory.AddFile(Configuration.GetSection("LoggingFile")); loggerFactory.AddDebug(); app.UseIdentity(); app.UseIdentityServer(); app.UseCors("CorsPolicy"); app.UseMvc(); DBInitialize.Seed(context, userManager); }
public IActionResult CreateDB() { var result = DBInitialize.SeedDatabase(_context); CreateDBViewModel createDBViewModel = new CreateDBViewModel(); if (result) { createDBViewModel.Finished = _stringLocalizer["DataEntered"]; } else { createDBViewModel.Finished = _stringLocalizer["NoDataEntered"]; } return(View(createDBViewModel)); }
public static void Main(string[] args) { var host = CreateHostBuilder(args).Build(); using (var scope = host.Services.CreateScope()) { var services = scope.ServiceProvider; try { var companyDBContext = scope.ServiceProvider.GetService <MyCompanyDbContext>(); DBInitialize.SeedData(companyDBContext); } catch (Exception ex) { var logger = services.GetRequiredService <ILogger <Program> >(); logger.LogError(ex, "An error occurred while seeding the Database"); } } host.Run(); }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); WebApiConfig.Register(GlobalConfiguration.Configuration); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); DBInitialize.CreatDefaultTableData();//首次启动程序会因为去创建DBContext中的Dynamic模型而费时间,但是启动起来了就OK了。 //这里做一个开关,项目不涉及到的时候关闭,避免影响效率 if (Convert.ToBoolean(ConfigurationManager.AppSettings["DynamicModelSwitch"])) { EnterPageInitialize.CreateInstance(EnterPageInitialize.ConfigProviderCreate());//启动报名页面修改的单例对象,提上同理。 } //ContainerBuilder builder = new ContainerBuilder(); //builder.RegisterControllers(Assembly.GetExecutingAssembly()); //builder.RegisterAssemblyTypes(Assembly.GetExecutingAssembly()).AsImplementedInterfaces(); //var container = builder.Build(); //DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); var builder = new ContainerBuilder(); var assembly = Assembly.GetExecutingAssembly(); var BllService = System.Reflection.Assembly.Load("Yuruisoft.RS.BLL");//类似于RegisterType的形式注册,被注册类型可以不是直接引用,但是必须被加载 //var dbModel = System.Reflection.Assembly.Load("Yuruisoft.RS.Model"); builder.RegisterAssemblyTypes(BllService, BllService).AsImplementedInterfaces(); //builder.RegisterAssemblyTypes(dbModel, dbModel).AsImplementedInterfaces(); builder.RegisterControllers(typeof(MvcApplication).Assembly); var container = builder.Build(); DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); #region 线程与异步管理 log4net.Config.XmlConfigurator.Configure(new System.IO.FileInfo(Server.MapPath("/App_Data/Config/Log4net.Config/log4net.Config.xml")));//读取配置信息 //string fileLogPath = Server.MapPath("App_Data/Log/"); //开启一个线程,扫描日志队列 ThreadPool.QueueUserWorkItem((a) => { while (true) { if (MyExceptionAttribute.exceptonQueue.Count() > 0) //判断是否有数据 { Exception ex = MyExceptionAttribute.exceptonQueue.Dequeue(); //出队 if (ex != null) { //string fileName = DateTime.Now.ToString("yyyy-MM-dd") + ".txt"; //File.AppendAllText(fileLogPath + fileName, ex.ToString(), Encoding.Default);//将异常写到文件中,用追加 ILog logger = LogManager.GetLogger("errorMsg"); logger.Error(ex);//将异常信息写到磁盘上 } else { Thread.Sleep(3000);//如果队列中没有数据,让当前线程休息,避免造成CPU空转 } } else { //这里可以自定义 Thread.Sleep(3000); //如果队列中没有数据,让当前线程休息,避免造成CPU空转 } } }); ThreadPool.QueueUserWorkItem((a) => {//这里是更新键值对的操作 while (true) { if (ExtendMethord.OperateScoreCacheQueue.Count() > 0) { OperateScoreCache op = ExtendMethord.OperateScoreCacheQueue.Dequeue(); if (op != null) { op.ScoreCacheAddOne(); } else { Thread.Sleep(3000); } } else { Thread.Sleep(3000); } } }); ThreadPool.QueueUserWorkItem((a) => {//这里是更新键值对的操作 while (true) { ExtendMethord.UpdateDB(); Thread.Sleep(3000); } }); #endregion }