2017-05-30 60 views
0

这是我的代码。 GetByuserEmail接收输入电子邮件并检查数据库。如果存在,它将返回电子邮件。在checkmail()方法中调用GetByUserEmail方法,如果电子邮件存在,则它应该返回true。请检查可能出错的地方。检查电子邮件是否存在于使用Jquery的数据库中

*public User GetByUserEmail(string email) 
     { 
      var users = db.Users.Where(u => u.Email == email); 
      if (users.Count() > 0) 
      { 
       return users.First(); 
      } 
      return null; 
     }* 


In regitster Controller, 

*public JsonResult checkEmail(string email) 
     { 
      Models.User user = userRepository.GetByUserName(email); 
      bool exists = (user != null); 
      JsonResult result = new JsonResult(); 
      result.JsonRequestBehavior = JsonRequestBehavior.AllowGet; 
      result.Data = new { Exist = exists }; 
      return result; 

     }* 


It returns in json format 

*{"Exist":false}* 
+0

你有没有在数据库中查找验证用户是否存在该电子邮件?您是否验证过您通过的电子邮件与数据库中的电子邮件没有区别?您是否验证了您的应用程序正在连接到正确的数据库? – mason

回答

1

不应该

Models.User user = userRepository.GetByUserName(email); 

Models.User user = userRepository.GetByUserEmail(email); 

编辑:您可能调用方法的第一行的错误方法从checkEmail方法。

0

如果Alexnadru的答案不起作用试试这个:

var users = db.Users.Where(u => u.Email.ToLower() == email.ToLower()); 

根据您的数据库设置[email protected] <> [email protected](大写)

相关问题