Example #1
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app,
                              IHostingEnvironment env,
                              KavaDocsConfiguration config)

        {
            if (env.IsDevelopment())
            {
                app.UseBrowserLink();
                app.UseDeveloperExceptionPage();
            }
            else
            {
                //app.UseDeveloperExceptionPage();
                app.UseExceptionHandler("/Home/Error");
            }

            Console.WriteLine("\r\nPlatform: " + System.Runtime.InteropServices.RuntimeInformation.OSDescription);
            Console.WriteLine("Connection: " + KavaDocsConfiguration.Current.ConnectionString);

            app.UseAuthentication();

            app.UseDatabaseErrorPage();
            app.UseStatusCodePages();
            app.UseStaticFiles();

            app.UseMvcWithDefaultRoute();
        }
Example #2
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            var config = new KavaDocsConfiguration();

            Configuration.Bind("KavaDocs", config);
            services.AddSingleton(config);

            KavaDocsConfiguration.Current = config;

            services.AddDbContext <KavaDocsContext>(builder =>
            {
                var connStr = config.ConnectionString;
                if (string.IsNullOrEmpty(connStr))
                {
                    connStr = "server=.;database=KavaDocs; integrated security=true;MultipleActiveResultSets=true";
                }
                //connStr = "";

                builder.UseSqlServer(connStr, opt =>
                {
                    opt.EnableRetryOnFailure();
                    opt.CommandTimeout(15);
                });
            });

            services.AddTransient <UserBusiness>();
            services.AddTransient <RepositoryBusiness>();
            services.AddTransient <OrganizationBusiness>();

            Task.Run(() =>
            {
                // preload data on separate thread if possible
                var ctx = KavaDocsContext.GetKavaDocsContext(config.ConnectionString);
                DatabaseCreator.EnsureKavaDocsData(ctx);
                ctx.Users.Any(p => p.Id == Guid.NewGuid());
            });

            // set up and configure Authentication - make sure to call .UseAuthentication()
            services
            .AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)

            .AddCookie(o =>
            {
                o.LoginPath         = "/account/signin";
                o.LogoutPath        = "/account/signout";
                o.SlidingExpiration = true;
                o.ExpireTimeSpan    = new TimeSpan(2, 0, 0, 0);
            });

            services.AddMvc()
            .AddJsonOptions(opt =>
            {
                opt.SerializerSettings.PreserveReferencesHandling = PreserveReferencesHandling.Objects;
                opt.SerializerSettings.Converters.Add(new StringEnumConverter()
                {
                    NamingStrategy = new CamelCaseNamingStrategy()
                });
            })
            .SetCompatibilityVersion(Microsoft.AspNetCore.Mvc.CompatibilityVersion.Version_2_1);
        }
        public static KavaDocsConfiguration GetApplicationConfiguration(string outputPath)
        {
            var configuration = new KavaDocsConfiguration();

            var iConfig = GetIConfigurationRoot(outputPath);

            iConfig
            .GetSection("KavaDocs")
            .Bind(configuration);

            return(configuration);
        }
 public void Init()
 {
     configuration = TestHelper.GetApplicationConfiguration(TestContext.CurrentContext.TestDirectory);
 }
 public UserBusiness(KavaDocsContext context, KavaDocsConfiguration config) : base(context)
 {
     Context       = context;
     Configuration = config;
 }
 public RepositoryBusiness(KavaDocsContext context, KavaDocsConfiguration config) : base(context)
 {
     Context       = context;
     Configuration = config;
 }
Example #7
0
 static kavaUi()
 {
     MarkdownMonsterModel = mmApp.Model;
     AddinModel           = new KavaDocsModel(mmApp.Model.Window);
     Configuration        = KavaApp.Configuration;
 }
 public OrganizationBusiness(KavaDocsContext context, KavaDocsConfiguration config) : base(context)
 {
     Context       = context;
     Configuration = config;
 }