La fonction suivante fonctionne parfaitement:fonctionnalité System.Web.Mail à Porting System.Net.Mail
protected void SendWebMailMessage(string DisplayName, string From, string ReplyTo,
string To, string Subject, string Body, string Attachments)
{
System.Web.Mail.MailMessage msg = new System.Web.Mail.MailMessage();
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver",
"smtpout.secureserver.net");
msg.Fields.Add(
"http://schemas.microsoft.com/cdo/configuration/smtpserverport", 25);
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusing",
2);
msg.Fields.Add(
"http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", 1);
msg.Fields.Add(
"http://schemas.microsoft.com/cdo/configuration/sendusername", From);
msg.Fields.Add(
"http://schemas.microsoft.com/cdo/configuration/sendpassword",
mailpassword);
msg.To = To;
msg.From = DisplayName + "<" + From + ">";
msg.BodyFormat = MailFormat.Html;
msg.Subject = Subject;
msg.Body = Body;
msg.Headers.Add("Reply-To", ReplyTo);
SmtpMail.SmtpServer = "smtpout.secureserver.net";
SmtpMail.Send(msg);
}
Cependant, je reçois un avertissement de construction me disant que System.Web.Mail est obsolète, et que Je devrais utiliser System.Net.Mail. Donc, je System.Net.Mail, et je suis venu avec la fonction suivante pour remplacer mon ancien:
protected void SendNetMailMessage(string DisplayName, string From, string ReplyTo,
string To, string Subject, string Body, string Attachments)
{
MailAddress addrfrom = new MailAddress(From, DisplayName);
MailAddress addrto = new MailAddress(To);
MailAddress replytoaddr = new MailAddress(ReplyTo);
System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();
msg.From = addrfrom;
msg.To.Add(addrto);
msg.ReplyTo = replytoaddr;
msg.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient("smtpout.secureserver.net");
smtp.Credentials = new NetworkCredential(From, mailpassword);
smtp.Send(msg);
}
Je ne pas eu des exceptions ou des erreurs, mais mon message ne passe par. Quelqu'un peut-il me dire ce que je peux faire de mal? Merci d'avance.
Etes-vous sûr que l'authentification est correcte? Mieux vaut vérifier le journal des événements sur le serveur de messagerie et aussi sur le système local? – RobS
Je n'ai pas accès aux journaux du serveur de messagerie. C'est un serveur de messagerie hébergé. Cependant, si elle ne s'est pas correctement authentifiée, la méthode System.Net.Mail.smptClient.Send() déclenchera une exception, comme System.Web.Mail.SmtpMail.Send() lève une exception lorsque l'authentification est sans succès. –
Je suis en train de tester une implémentation similaire (je viens juste de la convertir en System.Net.Mail) et je verrai si j'ai le même problème – RobS