private void Initialize()
 {
     ContextImplement.Init();
     Initializer.Initialize(
         path: Server.MapPath("./"),
         assemblyVersion: Assembly.GetExecutingAssembly().GetName().Version.ToString());
 }
Exemplo n.º 2
0
 public Startup(IConfiguration configuration, IWebHostEnvironment env)
 {
     this.configuration = configuration;
     System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);
     Applications.StartTime      = DateTime.Now;
     Applications.LastAccessTime = Applications.StartTime;
     ContextImplement.Init();
     Initializer.Initialize(
         path: env.ContentRootPath,
         assemblyVersion: Assembly.GetExecutingAssembly().GetName().Version.ToString());
 }
Exemplo n.º 3
0
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            app.UseCurrentRequestContext();

            ContextImplement.Init();
            Initializer.Initialize(path: env.ContentRootPath, assemblyVersion: System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString());

            app.UseHttpsRedirection();
            app.UsePathBase(configuration["pathBase"]);
            app.UseStaticFiles();
            app.UseSession();
            app.UseAuthentication();

            var lifetime = app.ApplicationServices.GetRequiredService <IApplicationLifetime>();

            lifetime.ApplicationStopping.Register(OnShutdown);

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseExceptionHandler("/errors/internalservererror");
            }
            app.UseStatusCodePages(context =>
            {
                var statusCode = context.HttpContext.Response.StatusCode;
                if (statusCode == 400)
                {
                    context.HttpContext.Response.Redirect("/errors/badrequest");
                }
                else if (statusCode == 404)
                {
                    context.HttpContext.Response.Redirect("/errors/notfound");
                }
                else if (statusCode == 500)
                {
                    context.HttpContext.Response.Redirect("/errors/internalservererror");
                }
                else
                {
                    context.HttpContext.Response.Redirect("/errors/internalservererror");
                }
                return(Task.CompletedTask);
            });

            app.Use(async(context, next) => await Invoke(context, next));
            app.UseSessionMiddleware();

            app.UseMvc(routes =>
            {
                routes.MapRoute(
                    name: "Default",
                    template: "{controller}/{action}",
                    defaults: new
                {
                    Controller = "Items",
                    Action     = "Index"
                },
                    constraints: new
                {
                    Controller = "[A-Za-z][A-Za-z0-9_]*",
                    Action     = "[A-Za-z][A-Za-z0-9_]*"
                }
                    );
                routes.MapRoute(
                    name: "Others",
                    template: "{reference}/{id}/{controller}/{action}",
                    defaults: new
                {
                    Action = "Index"
                },
                    constraints: new
                {
                    Reference  = "[A-Za-z][A-Za-z0-9_]*",
                    Id         = "[0-9]+",
                    Controller = "Binaries|OutgoingMails",
                    Action     = "[A-Za-z][A-Za-z0-9_]*"
                }
                    );
                routes.MapRoute(
                    name: "Item",
                    template: "{controller}/{id}/{action}",
                    defaults: new
                {
                    Controller = "Items",
                    Action     = "Edit"
                },
                    constraints: new
                {
                    Id     = "[0-9]+",
                    Action = "[A-Za-z][A-Za-z0-9_]*"
                }
                    );
                routes.MapRoute(
                    name: "Binaries",
                    template: "binaries/{guid}/{action}",
                    defaults: new
                {
                    Controller = "Binaries"
                },
                    constraints: new
                {
                    Guid   = "[A-Z0-9]+",
                    Action = "[A-Za-z][A-Za-z0-9_]*"
                }
                    );
            });
        }