小编Ned*_*dim的帖子

如何通过Yandex SMTP发送电子邮件(C#ASP.NET)

以前,我使用我的服务器作为邮件主机,并通过我自己的主机发送电子邮件.现在,我使用Yandex作为我的邮件服务器.我正在尝试通过Yandex SMTP发送电子邮件.但是,我无法实现它.我每次都得到"操作已经超时"的消息.当我使用Thunderbird时,我能够使用相同的设置发送和接收电子邮件.因此,帐户没有问题.我感谢你的指导.你可以在下面看到我的代码:

EmailCredentials credentials = new EmailCredentials();
credentials.Domain = "domain.com";
credentials.SMTPUser = "email@domain.com";
credentials.SMTPPassword = "password";
int SmtpPort = 465;
string SmtpServer = "smtp.yandex.com";

System.Net.Mail.MailAddress sender = new System.Net.Mail.MailAddress(senderMail, senderName, System.Text.Encoding.UTF8);

System.Net.Mail.MailAddress recipient = new System.Net.Mail.MailAddress(recipientEmail, recipientName, System.Text.Encoding.UTF8);

System.Net.Mail.MailMessage email = new System.Net.Mail.MailMessage(sender, recipient);

email.BodyEncoding = System.Text.Encoding.UTF8;
email.SubjectEncoding = System.Text.Encoding.UTF8;

System.Net.Mail.AlternateView plainView = System.Net.Mail.AlternateView.CreateAlternateViewFromString(System.Text.RegularExpressions.Regex.Replace(mailBody, @"<(.|\n)*?>", string.Empty), null, MediaTypeNames.Text.Plain);

System.Net.Mail.AlternateView htmlView =  System.Net.Mail.AlternateView.CreateAlternateViewFromString(mailBody, null, MediaTypeNames.Text.Html);

email.AlternateViews.Clear();
email.AlternateViews.Add(plainView);
email.AlternateViews.Add(htmlView);
email.Subject = mailTitle;

System.Net.Mail.SmtpClient SMTP = new System.Net.Mail.SmtpClient();
SMTP.Host = SmtpServer;
SMTP.Port = …
Run Code Online (Sandbox Code Playgroud)

c# asp.net email smtp yandex

4
推荐指数
1
解决办法
9101
查看次数

标签 统计

asp.net ×1

c# ×1

email ×1

smtp ×1

yandex ×1