2016-02-18 55 views
1

我已經VS2015,實體框架6.我有一個數據庫,一個表(登錄)ASP.net實體框架檢查是否存在於數據庫

FirstName, lastName, Birthdate, email, password 

我也有一個文本框(或多個),按鈕

tbEmail tbpass and btnLogin 

如何檢查文本框中的用戶電子郵件是否與數據庫中的電子郵件匹配?

到目前爲止,我有:

protected void btnLogin_Click(object sender, EventArgs e) 
    { 
      Logins Log = new Logins(); 

    using (LoginDataEntities lg = new LoginDataEntities()) 
    { 
     string @email = tbUsernameL.Text; 
     string @password = tbPassL.Text; 

     var logged = from L in lg.Logins 
        where L.Username == @email 
        && L.Pass == @password 
        select L.Username; 



     if (logged != null) 
     { 
      lblSuccess.Visible = true; 
     } 
     else 
     { 
      lblFail.Visible = true; 
     } 


    } 
} 

但是,它不工作,總是能夠成功的標籤。我該如何解決?

回答

1

與下面的代碼段試一次:

using (LoginDataEntities lg = new LoginDataEntities()) 
     { 
      string @email = tbUsernameL.Text; 
      string @password = tbPassL.Text; 

      var logged = lg.Logins 
.SingleOrDefault(l=> l.Username == @email && l.Pass == @password); 

      if (logged != null) // update 
      { 
       lblSuccess.Visible = true; 
      } 
      else 
      { 
       lblFail.Visible = true; 
      } 
     } 

另外,可你也看看下面的例子再次:

http://www.c-sharpcorner.com/uploadfile/b19d5a/custom-user-login-and-registration-page-in-Asp-Net-mvc3-with-razor-and-entity-framework/

或者你refactorisiers與單個用戶帳戶的VS模板

enter image description here

+0

我收到SingleorDefault錯誤 - 「錯誤CS1061 \t LoginDataEntities'沒有包含'SingleOrDefault'的定義,也沒有找到接受'LoginDataEntities'類型的第一個參數的擴展方法'SingleOrDefault'」 – wiredlime2015

+0

Ops sry,lg .Logins.SingleOrDefault(l => l.Username == @email && l.Pass == @password); 我錯了你的實體,我會糾正我的片段.. –

+0

這工作,謝謝你! – wiredlime2015

相關問題