using System.Linq; using Application.Domain.Entities; using Infrastructure.Data; using Infrastructure.Extensions; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Mvc; namespace StudyCenter.Controllers { public class HomeController : Controller { private readonly IHostingEnvironment _env; private readonly IRepository _userRepo; public HomeController(IHostingEnvironment env, IRepository userRepo) { this._env = env; this._userRepo = userRepo; } public IActionResult Index() { return View(); } public IActionResult Privacy() { return View(); } [Route("/Login")] [AllowAnonymous] public IActionResult Test() { var userName = "admin"; var userPermissions = this._userRepo.ReadOnlyTable().Where(o => o.UserName == userName) .SelectMany(o => o.UserRoles) .Select(o => o.Role) .SelectMany(o => o.RolePermissions) .Select(o => o.Permission.Number) .ToList(); HttpContext.SignIn(userName, userPermissions, true); return RedirectToAction("Index", "Home"); } } }