public ActionResult SignUp(MVCUser User) { User userDto = Mapper.Map <DbCenter.ModelClasses.User>(User); ESaleContext.AddUser(userDto); ESaleContext.SaveChanges(); return(RedirectToAction("Index", "Home")); }
public ActionResult Login(MVCUser user) { User userDto = Mapper.Map <User>(user); var result = ESaleContext.LoginUser(userDto); if (!result.Any()) { @ViewBag.errorMessage = "Email And Password not matched !"; return(View()); } else { Session["UserID"] = result.First().ID; Session["Type"] = "User"; return(RedirectToAction("Index", "Home")); } }
public override void OnActionExecuted(ActionExecutedContext filterContext) { if (!filterContext.ActionDescriptor.IsDefined(typeof(AllowAnonymousAttribute), true) && !filterContext.ActionDescriptor.ControllerDescriptor.IsDefined(typeof(AllowAnonymousAttribute), true)) { UserModel userModel; if (filterContext.Controller.ViewBag.UserModel == null) { userModel = new UserModel(); filterContext.Controller.ViewBag.UserModel = userModel; } else { userModel = filterContext.Controller.ViewBag.UserModel as UserModel; } if (filterContext.HttpContext.User.Identity.IsAuthenticated) { MVCUser mvcUser = filterContext.HttpContext.User.GetMVCUser(); userModel.IsUserAuthenticated = mvcUser.IsAuthenticated; userModel.Name = mvcUser.Name; userModel.RoleName = mvcUser.RoleName; userModel.FacId = mvcUser.FacId; userModel.Dept = mvcUser.Dept; userModel.ClassID = mvcUser.ClassID; var roleKey = "RoleKey"; foreach (var item in mvcUser.Roles) { roleKey += item; } var controllerName = filterContext.RouteData.Values["controller"].ToString(); filterContext.Controller.ViewBag.ReturnUrl = controllerName; //只能從Controller 因設計上是用Controller去切功能模組 var permissionOperationMap = HttpRuntime.Cache.GetOrInsert <Dictionary <string, EnumOperation> >(roleKey, () => PermissionUtils.GetPermissionOperationMap(mvcUser.Roles)); userModel.Operation = permissionOperationMap.ContainsKey(controllerName) ? permissionOperationMap[controllerName] : EnumOperation.None; } base.OnActionExecuted(filterContext); } }
private void PostAuthenticateRequestHandler(object sender, EventArgs e) { HttpCookie authCookie = this.Context.Request.Cookies[FormsAuthentication.FormsCookieName]; if (authCookie != null && !string.IsNullOrEmpty(authCookie.Value)) { //var formsAuthentication = DependencyResolver.Current.GetService<IFormsAuthentication>(); IFormsAuthentication formsAuthentication = new DefaultFormsAuthentication(); var ticket = formsAuthentication.Decrypt(authCookie.Value); try { var mvcUser = new MVCUser(ticket); this.Context.User = new GenericPrincipal(mvcUser, null); formsAuthentication.SetAuthCookie(this.Context, ticket); } catch { //清掉Session重登 formsAuthentication.Signout(); HttpContext.Current.User = new GenericPrincipal(new GenericIdentity(string.Empty), null); } } }
public ActionResult Login() { MVCUser viewmodel = new MVCUser(); return(View(viewmodel)); }
public ActionResult SignUp() { MVCUser viewmodel = new MVCUser(); return(View(viewmodel)); }