close

使用情境為 刪除或取消某特定資料, 要求再輸入一次密碼時, 如:取消報名課程, 要求輸入帳戶密碼。

網路關於CheckPassword使用範例很少,在此記錄一下:

1.引用

using Microsoft.AspNet.Identity;
using Microsoft.AspNet.Identity.Owin;

 

2.Controller加寫宣告 _userManager 及UserManager之後再使用UserManager.CheckPassword

    public class XXXXXController : Controller
    {

        private ApplicationUserManager _userManager;

        public ApplicationUserManager UserManager
        {
            get
            {
                return _userManager ?? HttpContext.GetOwinContext().GetUserManager<ApplicationUserManager>();
            }
            private set
            {
                _userManager = value;
            }
        }

        ..................

 

        //CheckPassword不接受單純的UserId, 所以要用下行取得ApplicationUser

        var user = UserManager.Users.FirstOrDefault(e => e.UserName == User.Identity.Name);

        if (UserManager.CheckPassword(user, password))
            {
                 //密碼驗證成功執行
            }

        else

         {
            ModelState.AddModelError("", "密碼錯誤。");

         }

    }

arrow
arrow
    文章標籤
    MVC C# AspNet.Identity
    全站熱搜
    創作者介紹
    創作者 蔡官宏 的頭像
    蔡官宏

    MVC5開發疑難雜病論

    蔡官宏 發表在 痞客邦 留言(0) 人氣()