Есть ли способ включить адрес электронной почты "отображаемое имя" в элементе smtp файла Web.config?

Возможный дубликат:
Сохранение Smtp из отображаемого имени электронной почты в Web.Config

Я работаю над EmailSender, и я захватываю адрес электронной почты из моего файла Web.config. Я также хотел бы получить "отображаемое имя" для этого письма, из того же раздела, если это возможно, но я не вижу очевидного способа сделать это.

В моем файле Web.config я включил по умолчанию "из адреса электронной почты", например:

<configuration>
  <system.net>
    <mailSettings>
      <smtp from="[email protected]"><!-- no displayName attribute :( -->
        <network ... />
      </smtp>
    </mailSettings>
  </system.net>
</configuration>

В моем EmailSender у меня есть что-то вроде этого:

        var smtpSection = ...;
        var message = new MailMessage();
        message.From =  new MailAddress(_settings.From, senderDisplayName);

Есть ли рекомендуемый способ хранения senderDisplayName в файле web.config?

  • Есть ли способ включить его в атрибут from? Например:

    <smtp from="Automatic Mailer &lt;[email protected]&gt;">
    
  • Или это должен быть пользовательский элемент в appSettings?
  • Или есть какой-то другой способ?

Ответ 2

Вам нужно вытащить адрес электронной почты и т.д. из web.config? Почему бы не установить его в EmailSender?

Конструктор MailAddress также включает в себя перегрузку, которая позволяет указать отображаемое имя (New MailAddress (адрес, displayName). Большинство почтовых клиентов отображает отображаемое имя, если оно присутствует, вместо адреса электронной почты.

http://www.4guysfromrolla.com/articles/101707-1.aspx

Ответ 3

Лично я установил его в Web.Config в разделе AppSettings, так как раздел настроек smtp не предоставляет места для него.