У меня есть такие таблицы в моей базе данных, как Клиент
, Участник
, Инструктор
, Сотрудник
и т. д. Каждая из этих пользователей имеет его адрес электронной почты. Мне нужно проверить, есть ли уже пользователь с данным адресом электронной почты. Я думал о следующем:
public bool IsEmailAddressExists(string email)
{
if (!Context.Customers.Any(c => string.Equals(c.Email, email, StringComparison.InvariantCultureIgnoreCase)))
if (!Context.Members.Any(m => string.Equals(m.Email, email, StringComparison.InvariantCultureIgnoreCase)))
...
}
public bool IsEmailAddressExists(string email)
{
var emails = Context.Customers.Select(c => c.Email).Union(Context.Members.Select(m => m.Email))...; //other unions
return emails.Any(e => string.Equals(e, email, StringComparison.InvariantCultureIgnoreCase));
}
Есть еще таблицы и много пользователей, поэтому я хотел бы знать, какой способ будет наиболее эффективным внедрить такую проверку.
Спасибо.