Должен ли я использовать System.Net.Mail.MailAddress в моей модели домена или просто строки?

Как хорошо освещено в этом вопросе, System.Uri хороший выбор, чтобы отразить мое намерение для URI. Но как насчет адресов электронной почты?

Кажется, не так четко, потому что MailAddress имеет дополнительную информацию в своем DisplayName свойство, которое не очень подходит.

2 ответа

Решение

Вам не нужно использовать DisplayName если вы не хотите или должны. MailAddress type гарантирует, что адрес электронной почты будет правильно сформирован, в противном случае выдает исключение в его конструкторе. Я бы сказал, что это стоит использовать MailAddress над String по этой причине, а также потому, что он сообщает намерение и добавляет немного накладных расходов.

System.Uri обладает множеством полезных функций, но System.Net.Mail.MailAddress не имеет, поэтому использовать его не является критическим решением. FWIW, я реализовал это обоими способами (но в разных местах!) - строка и MailAddress.

Другие вопросы по тегам