Проверьте имя пользователя и пароль в запросе LINQ - PullRequest
0 голосов
/ 22 мая 2010

этот запрос linq

var users = from u in context.Users
            where u.UserEMailAdresses.Any(e1 => e1.EMailAddress == userEMail) && u.UserPasswords.Any(e2 => e2.PasswordSaltedHash == passwordSaltedHash)
            select u;
return users.Count();

возвращает: 1, даже если в таблице паролей ничего нет.

как получилось?

что я пытаюсь сделать, это получитьзначения email и passwordHash из двух отдельных таблиц (UserEMailAddresses и UserPasswords), связанных внешними ключами с третьей таблицей (Users).

это должно быть просто - проверка, если электронная почтаи пароль Mach от формы к базе данных.но это не работает для меня.

я получаю 1 (для подсчета), даже если в таблице UserPasswords нет записей.

- это совершенно неверный запрос linq вышеили ...?

Ответы [ 2 ]

2 голосов
/ 22 мая 2010

Вы можете попробовать использовать .Contains вместо .Any

0 голосов
/ 22 мая 2010

на самом деле все идеально с запросом.

проблема заключалась в том, что я не строил решение, прежде чем пытаться его.

что смутило меня, так это то, что мне кажется, что код, который мне нужно, НЕОБХОДИМО СОЗДАТЬ, а вот HTML / CSS я не хочу

извините

...