Если вы отправляете почту, используя System.Net.Mail
, то для проверки будет хорошей идеей использовать класс MailAddress
, так как вы знаете, что вы можете отправлять почту, используя эти классы (технически это не разрешает все действительные адреса электронной почты, но нет никакого смысла разрешать адреса, на которые вы не можете отправлять).
Жаль, что нет метода TryParse
, поскольку недопустимый адрес на самом деле не является исключительным случаем, и не очень приятно использовать исключения для управления потоком таким образом, но, по сути, мы делаем то же самое
Я заранее добавил базовую проверку работоспособности, чтобы уменьшить количество исключений, создаваемых на явно недействительных адресах. Ничего особенного, просто проверка, что есть @
и .
в разумных позициях. Я не могу вспомнить, что у меня в голове, но это было так просто, я думаю, я просто использовал String.IndexOf
, а не регулярное выражение. Так что да, я считаю что-то вроде того, что стоит сделать, но не трать на это слишком много времени.