コード例 #1
0
        public override bool IsUserInRole(string username, string roleName)
        {
            using (MaaseDBEntities db = new MaaseDBEntities())
            {
                T_Users user = db.T_Users.FirstOrDefault(u => u.UserName.Equals(username, StringComparison.CurrentCultureIgnoreCase));

                var roles = from ur in user.T_UsersInRoles
                            from r in db.T_UserRoles
                            where ur.RoleId == r.RoleId
                            select r.RoleName;
                if (user != null)
                {
                    return(roles.Any(r => r.Equals(roleName, StringComparison.CurrentCultureIgnoreCase)));
                }
                else
                {
                    return(false);
                }
            }
        }
コード例 #2
0
        public override string[] GetRolesForUser(string username)
        {
            using (MaaseDBEntities db = new MaaseDBEntities())
            {
                T_Users user = db.T_Users.FirstOrDefault(u => u.UserName.Equals(username, StringComparison.CurrentCultureIgnoreCase));

                var roles = from ur in user.T_UsersInRoles
                            from r in db.T_UserRoles
                            where ur.RoleId == r.RoleId
                            select r.RoleName;
                if (roles != null)
                {
                    return(roles.ToArray());
                }
                else
                {
                    return new string[] { }
                };;
            }
        }
コード例 #3
0
        public ActionResult LogOn(Account loginInfo, string returnUrl, FormCollection frm)
        {
            if (frm["DBYear"].ToString() != "")
            {
                Session["DBConnection"]     = frm["DBYear"].ToString();
                Session["ReportConnection"] = "report" + frm["DBYear"].ToString().Substring(15);
                Session["DBYearName"]       = frm["DBYear"].ToString().Substring(15) + " سال";



                //Statics.dbconnection = frm["DBYear"].ToString();
                //Session["ReportConnection"].ToString() = "report"+frm["DBYear"].ToString().Substring(15);

                //Statics.DBYearName = frm["DBYear"].ToString().Substring(15)+" سال";
            }
            else
            {
                Session["DBYearName"]       = "";
                Session["ReportConnection"] = "";
                Session["DBYearName"]       = "";
            }
            string a = Session["DBYearName"].ToString();
            string b = Session["ReportConnection"].ToString();
            string c = Session["DBYearName"].ToString();

            db = new MaaseDBEntities();



            if (this.ModelState.IsValid)
            {
                if (LoginUser(loginInfo.Username, loginInfo.Password))
                {
                    FormsAuthentication.SetAuthCookie(loginInfo.Username, loginInfo.RememberMe);
                    if (shouldRedirect(returnUrl))
                    {
                        return(Redirect(returnUrl));
                    }
                    FormsAuthentication.RedirectFromLoginPage(loginInfo.Username, loginInfo.RememberMe);
                }

                ViewBag.err = "نام کاربری یا رمز عبور اشتباه است";
            }


            List <DataBase>       dblist = Statics.GetDataDases();
            List <SelectListItem> list   = new List <SelectListItem>();

            for (int i = 0; i < dblist.Count; i++)
            {
                SelectListItem s = new SelectListItem();
                s.Text  = dblist[i].Text;
                s.Value = dblist[i].DBName;
                list.Add(s);
            }


            SelectList sl = new SelectList(list.OrderByDescending(m => m.Value), "Value", "Text");

            ViewBag.DBYear = sl;

            //ViewBag.Error = "Login faild! Make sure you have entered the right user name and password!";
            return(View(loginInfo));
        }