2010-05-03 13 views
41

Quiero establecer el valor de ReplyTo para .NET MailMessage.¿Cómo asigno un valor a una propiedad ReplyTo de MailMessage?

MailMessage.ReplyTo propiedad:

ReplyTo es obsoleto para este tipo. Por favor, use ReplyToList en su lugar, que puede aceptar múltiples direcciones.

MailMessage.ReplyToList propiedad:

Obtiene o define la lista de direcciones a respuesta a la mensaje de correo.

Pero, ReplyToList es ReadOnly.

He tratado de utilizar la propiedad MailMessage.Headers así:

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

como se describe aquí: System.Web.Mail, OH MY!

embargo, eso no parece funcionar.

¿Cómo configuro los valores de la propiedad de ReadOnly de MailMessage ReplyToList?

+0

Esto es exactamente por eso que necesitamos [Warlords ** ** de Documentación] (http: //meta.stackoverflow .com/questions/306213/warlords-of-documentation-your-questions-respondida?cb = 1) - Esto es infinitamente más útil que la página de MSDN en ['MailMessage.ReplyToList'] (https://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage.replytolist (v = vs.110) .aspx) – KyleMit

Respuesta

6

No se puede decir

message.ReplyToList = new MailAddressCollection(); 

Para crear una nueva colección. Sin embargo, agregar a la colección existente es lo que desea hacer.

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

Mi respuesta no es diferente a las respuestas ya dadas aceptados. Sin embargo, sentí que era necesario proporcionarlo.

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

Me gusta la sintaxis de array init, que llamará Add() para usted.

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

es necesario agregar lista de direcciones a ReplyTo ReplyToList por Agregar método:

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