Существует ограничение на уровне базы данных в пользовательской таблице для уникального поля - электронная почта. То есть, если мы попытаемся сохранить пользователя с существующим адресом электронной почты, возникнет исключение SQLServerException. В этом случае мы можем перехватить это техническое исключение, создать и затем выдать наше собственное техническое исключение .
Но мы также можем сделать запрос в базу данных и проверить, существует ли пользователь, а затем бросить наше * логическое исключение .
Вопрос в том, какой из вариантов предпочтительнее?