Skip to content

Слање/пријем Email порука

NuGet пакет MailKit.

Install-Package MailKit

Заглавље

using MimeKit;
using MailKit;
using MailKit.Security;
using MailKit.Search;
using MailKit.Net.Imap;
using MailKit.Net.Pop3;
using MailKit.Net.Smtp;

Слање поруке протоколом SMTP:

            var email = new MimeMessage();
            email.From.Add(new MailboxAddress("Outlook User", "username@outlook.com"));
            email.To.Add(new MailboxAddress("Any Recipient", "recipient@domain.com"));
            email.Subject = "Any email subject...";
            email.Body = new TextPart("plain");
            {
                Text = "Message text goes here...";
            }
            using (var smtpClient = new SmtpClient())
            {
                smtpClient.Connect("smtp-mail.outlook.com", 587, SecureSocketOptions.StartTls);
                smtpClient.Authenticate("username@outlook.com", "Password");
                smtpClient.Send(email);
                smtpClient.Disconnect(true);
            }

Пријем поруке протоколом POP3 :

            using (var client = new Pop3Client())
            {
                client.Connect("pop-mail.outlook.com", 110, false);
                client.Authenticate("username@outlook.com", "Password");
                for (int i = 0; i < client.Count; i++)
                {
                    var message = client.GetMessage(i);
                    Console.WriteLine("Subject: {0}", message.Subject);
                }
                client.Disconnect(true);
            }

Пријем поруке протоколом IMAP:

            using (var client = new ImapClient())
            {
                client.Connect("imap-mail.outlook.com", 993, true);
                client.Authenticate("username@outlook.com", "Password");
                var inbox = client.Inbox;
                inbox.Open(FolderAccess.ReadOnly);
                Console.WriteLine("Total messages: {0}", inbox.Count);
                Console.WriteLine("Recent messages: {0}", inbox.Recent);
                for (int i = 0; i < inbox.Count; i++)
                {
                    var message = inbox.GetMessage(i);
                    Console.WriteLine("Subject: {0}", message.Subject);
                }
                client.Disconnect(true);
            }