public UserController(AuthDemoContext _context, IMapper _mapper)
 {
     this.context = _context;
     this.mapper  = _mapper;
 }
Exemple #2
0
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env, DemoContext demoContext,
                              UserManager <AppUser> userManager, RoleManager <IdentityRole> roleManager, AuthDemoContext authDemoContext)
        {
            // Generation for Demo
            demoContext.Database.EnsureCreated();

            if (!userManager.Users.Any())
            {
                roleManager.CreateAsync(new IdentityRole()
                {
                    Name = "admin"
                }).Wait();

                roleManager.CreateAsync(new IdentityRole()
                {
                    Name = "user"
                }).Wait();

                AppUser adminUser = new AppUser()
                {
                    Email     = "*****@*****.**",
                    UserName  = "******",
                    FirstName = "Admin",
                    LastName  = "User"
                };

                userManager.CreateAsync(adminUser, "admin").Wait();
                userManager.AddToRolesAsync(adminUser, new[] { "admin", "user" }).Wait();

                AppUser normalUser = new AppUser()
                {
                    Email     = "*****@*****.**",
                    UserName  = "******",
                    FirstName = "Normal",
                    LastName  = "User"
                };

                userManager.CreateAsync(normalUser, "user").Wait();
                userManager.AddToRolesAsync(normalUser, new[] { "user" }).Wait();
            }

            authDemoContext.RequiresAuthForQueryDemos.AddRange(
                new RequiresAuthForQuery()
            {
                Content = "Test 1"
            },
                new RequiresAuthForQuery()
            {
                Content = "Test 2"
            }
                );

            authDemoContext.RequiresAdminForQueryDemos.AddRange(
                new RequiresAdminForQuery()
            {
                Content = "Test 1"
            },
                new RequiresAdminForQuery()
            {
                Content = "Test 2"
            }
                );

            authDemoContext.CustomFunctionForQueryDemos.AddRange(
                new CustomFunctionForQuery()
            {
                Content = "Test 1"
            },
                new CustomFunctionForQuery()
            {
                Content = "Test 2"
            }
                );

            authDemoContext.CustomFunctionPerEntryForQueryDemos.AddRange(
                new CustomFunctionPerEntryForQuery()
            {
                Content = "Test 1"
            },
                new CustomFunctionPerEntryForQuery()
            {
                Content = "Test 2"
            }
                );

            authDemoContext.QueryFieldDemos.AddRange(
                new QueryFields()
            {
                Content  = "Test 1",
                Content2 = "Content 2.1",
                Content3 = "Content 3.1"
            },
                new QueryFields()
            {
                Content  = "Test 2",
                Content2 = "Content 2.2",
                Content3 = "Content 3.2"
            }
                );

            authDemoContext.SaveChanges();

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

            app.UseCors(cfg => cfg.AllowAnyHeader().AllowAnyMethod().AllowAnyOrigin());

            /* Auth Demo */
            app.UseAuthentication();
            // app.UseAuthorization();

            //Add Middleware
            app.UseSapphireDb();

            app.UseStaticFiles();
            app.UseSpaStaticFiles();

            //app.UseMvcWithDefaultRoute();

            app.UseSpa(spa =>
            {
                if (env.IsDevelopment() || env.EnvironmentName == "pg")
                {
                    spa.UseProxyToSpaDevelopmentServer("http://localhost:4200");
                }
            });
        }