.NET Framework
System.Net.Mail
Поиск…
замечания
Важно Dispose System.Net.MailMessage, потому что каждое отдельное приложение содержит Stream, и эти потоки должны быть освобождены как можно скорее. Оператор using гарантирует, что объект Disposable Disposed также в случае Исключения
MailMessage
Вот пример создания почтового сообщения с вложениями. После создания мы отправляем это сообщение с помощью класса SmtpClient
. Здесь используется порт 25 по умолчанию.
public class clsMail
{
private static bool SendMail(string mailfrom, List<string>replytos, List<string> mailtos, List<string> mailccs, List<string> mailbccs, string body, string subject, List<string> Attachment)
{
try
{
using(MailMessage MyMail = new MailMessage())
{
MyMail.From = new MailAddress(mailfrom);
foreach (string mailto in mailtos)
MyMail.To.Add(mailto);
if (replytos != null && replytos.Any())
{
foreach (string replyto in replytos)
MyMail.ReplyToList.Add(replyto);
}
if (mailccs != null && mailccs.Any())
{
foreach (string mailcc in mailccs)
MyMail.CC.Add(mailcc);
}
if (mailbccs != null && mailbccs.Any())
{
foreach (string mailbcc in mailbccs)
MyMail.Bcc.Add(mailbcc);
}
MyMail.Subject = subject;
MyMail.IsBodyHtml = true;
MyMail.Body = body;
MyMail.Priority = MailPriority.Normal;
if (Attachment != null && Attachment.Any())
{
System.Net.Mail.Attachment attachment;
foreach (var item in Attachment)
{
attachment = new System.Net.Mail.Attachment(item);
MyMail.Attachments.Add(attachment);
}
}
SmtpClient smtpMailObj = new SmtpClient();
smtpMailObj.Host = "your host";
smtpMailObj.Port = 25;
smtpMailObj.Credentials = new System.Net.NetworkCredential("uid", "pwd");
smtpMailObj.Send(MyMail);
return true;
}
}
catch
{
return false;
}
}
}
Почта с приложением
MailMessage
представляет почтовое сообщение, которое может быть отправлено далее с использованием класса SmtpClient
. В почтовое сообщение можно добавить несколько вложений (файлов).
using System.Net.Mail;
using(MailMessage myMail = new MailMessage())
{
Attachment attachment = new Attachment(path);
myMail.Attachments.Add(attachment);
// further processing to send the mail message
}
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow