2017-01-20 16 views
0

私は1つのMVCアプリケーションで作業しています。ログインボタンをクリックすると、パフォーマンスに応じて良い応答時間ではないホームページにリダイレクトするのに、私はほぼ7秒かかります。応答時間を改善する方法を教えてください。 以下は私のコントローラコードです。ログイン応答のパフォーマンスを向上させる方法

public ActionResult UserLogIn(Models.LogIn user) 
     { 
      if (ModelState.IsValid) 
      { 
       if (IsValid(user.User_Id, user.User_Password)) 
       { 
        using (var db = new CopaRuleContext()) 
        { 
         var ApproveUsers = db.tbl_User.Where(u => u.User_Approved == "Yes" && u.User_Id == user.User_Id).ToList(); 
         var UserDetails = db.tbl_User.FirstOrDefault(u => u.User_Id == user.User_Id); 

         string UserRole = UserDetails.User_Role; 
         if (UserRole != null) 
         { 
          Session["UserRole"] = UserDetails.User_Role; 
         } 

         var rolename = db.tbl_Roles.FirstOrDefault(u => u.Role_Name == UserRole); 
         if (rolename != null) 
         { 
          Session["RoleName"] = rolename.Role_Description; 
         } 

         var firstname = UserDetails.User_First_Name; 
         var lastname = UserDetails.User_Last_Name; 

         firstname = firstname.Substring(0, 1).ToUpper() + firstname.Substring(1).ToLower(); 
         lastname = lastname.Substring(0, 1).ToUpper() + lastname.Substring(1).ToLower(); 

         Session["UserName"] = firstname + ' ' + lastname; 
         Session["UserId"] = UserDetails.User_Id; 
         if (ApproveUsers != null && ApproveUsers.Count() > 0) 
         { 
          if (UserDetails.User_Is_Deleted != 1) 
          { 
           Session["Process"] = "PP"; 
           if (UserRole == "Role-1") 
           { 
            FormsAuthentication.SetAuthCookie(user.User_Id, false); 
            return RedirectToAction("Notification", "Inbox"); 
           } 
           else if (UserRole == "Role-2") 
           { 
            FormsAuthentication.SetAuthCookie(user.User_Id, false); 
            return RedirectToAction("Clear", "Clear"); 
           } 
           if (UserRole == "Role-3") 
           { 
            FormsAuthentication.SetAuthCookie(user.User_Id, false); 
            return RedirectToAction("Notification", "Inbox"); 
           } 
           if (UserRole == "Role-4") 
           { 
            FormsAuthentication.SetAuthCookie(user.User_Id, false); 
            return RedirectToAction("Notification", "Inbox"); 
           } 
          } 
         } 
        } 
       } 
      } 
      return View(user); 
     } 

答えて

0

パスワードの暗号化に問題がありました。私は塩のハッシュ技術を使用して、ログインのパフォーマンスに影響を与えていたパスワードを暗号化していました。私はSHA1暗号化でそれを変更し、パフォーマンスは非常に高速になった。

関連する問題