2015-01-06 82 views
1

我想在我的MVC項目開始時構建成員系統,並使用Membership.ValidateUser方法來驗證憑證。不過,我不明白這種方法如何訪問我的數據庫,並檢查我的電子郵件和密碼信息。Membership.ValidateUser方法如何訪問數據庫?

[HttpPost] 
[ActionName("Login")] 
public ActionResult Login(LoginModel loginModel) 
{ 
     if (Membership.ValidateUser(loginModel.Email, loginModel.Password)) 
     { 
      FormsAuthentication.SetAuthCookie(loginModel.Email, true); 
      return Json(true); 
     } 

     return new JsonNetResult() 
     { Data = new { Error = true, Messages = new[] { new { Message = "Wrong username or password" } } } }; 
} 

回答

1

它使用您的Web.config文件中指定的MembershipProvider來驗證用戶。默認情況下,它使用DefaultMembershipProvider

+0

<添加名稱= 「MyMembershipProvider」 TYPE = 「MyProject.Domain.Administration.Domain.Membership.MyMembershipProvider」 的connectionStringName = 「MembershipDb」 enablePasswordRetrieval = 「假」 enablePasswordReset設置= 「真」 requiresQuestionAndAnswer =「假「requiresUniqueEmail =」true「maxInvalidPasswordAttempts =」99「minRequiredPasswordLength =」1「minRequiredNonalphanumericCharacters =」0「passwordAttemptWindow =」10「applicationName =」/「/>如何獲取我用來存放憑證的數據庫或表格 – user2923864

+0

您的數據store在連接字符串中定義,在您的註釋中的代碼中通過connectionStringName =「MembershipDb」引用它,因此它在您的web.config中定義的連接字符串中使用了名爲MembershipDb的DB –