C# 21.07.2020 admin No comments

Отправка email при помощи C#

В данной статье мы посмотрим, как можно отправить email при помощи SMTP протокола.

Программный код:

using System.Net;
using System.Net.Mail;

namespace EmailSender
{
    class Program
    {
        static void Main(string[] args)
        {
            // получаем SmtpClient
            SmtpClient smtpClient = GetSmtpClient();
            // получаем сообщение
            MailMessage mailMessage = GetMailMessage();

            // отправляем сообщение
            smtpClient.Send(mailMessage);
        }

        private static MailMessage GetMailMessage()
        {
            // создаём объект сообщения
            MailMessage mailMessage = new MailMessage();
            // указываем, от кого отсылается сообщение
            mailMessage.From = new MailAddress("from@yandex.ru");
            // указываем, кому отправляется сообщение
            mailMessage.To.Add(new MailAddress("to@example.com"));
            // указываем, кому необходимо отослать копию сообщения
            mailMessage.CC.Add(new MailAddress("cc@example.com"));
            // указываем, кому необходимо отправить скрытую копию сообщения
            mailMessage.Bcc.Add(new MailAddress("bcc@example.com"));
            // указываем тему сообщения
            mailMessage.Subject = "Заголовок";
            // указываем текст сообщения
            mailMessage.Body = "Текст сообщения";
            // добавляем вложение
            mailMessage.Attachments.Add(new Attachment(@"C:\\test.txt"));

            return mailMessage;
        }

        private static SmtpClient GetSmtpClient()
        {
            // создаём объект SmtpClient
            SmtpClient smtpClient = new SmtpClient();
            // указываем адрес используемого SMTP сервера
            smtpClient.Host = "smtp.yandex.ru";
            // указываем, что необходимо использовать SSL
            smtpClient.EnableSsl = true;
            // задаём используемый порт
            smtpClient.Port = 587;
            // указываем логин и пароль аккаунта, который используется
            // для доступа к SMTP серверу
            smtpClient.Credentials = new NetworkCredential("test@yandex.ru", "password");

            return smtpClient;
        }
    }
}

Использование html контента в письме:

// указываем текст сообщения
mailMessage.Body = "<a href='progtask.ru'>Блог</a>";
// указываем, что текст сообщения представлен в виде html
mailMessage.IsBodyHtml = true;



1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (3 оценок, среднее: 3,67 из 5)
Загрузка...