2010-05-03 9 views
41

Desidero impostare il valore ReplyTo per .NET MailMessage.Come si assegna un valore a una proprietà ReplyTo di MailMessage?

MailMessage.ReplyTo Proprietà:

ReplyTo è obsoleto per questo tipo. Utilizzare ReplyToList invece che può accettare più indirizzi.

MailMessage.ReplyToList Proprietà:

Ottiene o imposta l'elenco di indirizzi da risposta per il messaggio di posta elettronica.

Ma ReplyToList è ReadOnly.

Ho cercato di utilizzare la proprietà MailMessage.Headers in questo modo:

mail.Headers.Add("Reply-To", "[email protected]"); 

come descritto qui: System.Web.Mail, OH MY!

Ma, che non sembra funzionare.

Come si imposta il valore/i della proprietà ReadOnly di MailMessage ReplyToList?

+0

Questo è esattamente il motivo per cui abbiamo bisogno [Warlords ** ** di documentazione] (http: //meta.stackoverflow .com/domande/306.213/signori della guerra-di-documentazione-your-domande-risposta?cb = 1) - Questo è infinitamente più utile della pagina MSDN su ['MailMessage.ReplyToList'] (https://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage.replytolist (v = vs.110) aspx) – KyleMit

risposta

6

Non si può dire

message.ReplyToList = new MailAddressCollection(); 

Per creare una nuova raccolta. Tuttavia, aggiungere alla collezione esistente è ciò che si desidera fare.

message.ReplyToList.Add(new MailAddress("[email protected]")); 
6

La mia risposta non è a differenza delle risposte già date accettati. Tuttavia, ho sentito che doveva essere fornito.

var fromEmail = new MailAddress("[email protected]", "Foo Bar"); 
var replyEmail = new MailAddress("[email protected]", "Foo Example"); 
var msgEmail = new MailMessage { From = fromEmail }; 
msgEmail.ReplyToList.Add(replyEmail); 
8

Mi piace la sintassi di init dell'array, che chiamerà Add() per voi.

var msg = new MailMessage("[email protected]", mailTo) { 
    Subject = "my important message", 
    Body = this.MessageBody, 
    ReplyToList = { mailTo } // array init syntax calls Add() 
}; 
mailClient.Send(msg); 
0

è necessario aggiungere elenco di indirizzi ReplyTo a ReplyToList da Add metodo:

  mail.Sender = new MailAddress(from, displayName); 
      mail.From = new MailAddress(from, displayName); 
      mail.ReplyToList.Add("[email protected]"); 
Problemi correlati