コード例 #1
0
        public IActionResult ChangePassword(string Password, string Password2)
        {
            string user_id_string = HttpContext.Session.GetString("User_ID");
            int    user_id;

            try
            {
                user_id = Convert.ToInt32(user_id_string);
            }
            catch
            {
                user_id = 0;
            }

            //เช็คจากฝั่ง Server ถ้า Password ไม่ตรงกัน
            if (Password != Password2)
            {
                TempData["msg"] = _CLSR.GetScriptAlertPopUp("Error", "Please contact Administrator", "", "E");
                return(RedirectToAction("ChangePassword", "Users"));
            }
            else
            {
                var user = _context.User.Where(i => i.User_ID == user_id).SingleOrDefault();

                using (IDbContextTransaction dbTran = _context.Database.BeginTransaction())
                {
                    String cDate = _CLSR.GetDateNow("");
                    String cTime = _CLSR.GetTimeNow("");


                    user.Password    = _CLSR.EncryptSHA512(Password);
                    user.Last_Update = cDate;



                    _context.Update(user);
                    _context.SaveChanges();

                    //ถ้าบันทึกข้อมูลเสร็จ ให้ Commit เพื่อยืนยันการเซฟข้อมูล
                    dbTran.Commit();

                    //ถ้าไม่สำเร็จให้ RollBack();


                    //Temp Message เพื่อขึ้น Alert ป๊อปอัพแสดง


                    TempData["msg"] = _CLSR.GetScriptAlertPopUp("Success", "Password changed successfully.", "", "D");
                    return(RedirectToAction("Index", "Home"));
                }
            }
        }