Computer Science

POP3 Mail Import

.net core example

                        public class MailMessage
{
    public string Subject { get; set; }
    public string From { get; set; }
    public string TextBody { get; set; }
    public string HtmlBody { get; set; }
}


using MailKit.Net.Pop3;
using MimeKit;

public async Task<List<MailMessage>> Pop3MailImport()
{
    string pop3Server = "your_mail_server_name";
    int pop3Port = 995; // SSL portu
    string email = "example@example.com";
    string password = "your_password";

    var mailList = new List<MailMessage>();

    try
    {
        using (var client = new Pop3Client())
        {
            await client.ConnectAsync(pop3Server, pop3Port, true);
            await client.AuthenticateAsync(email, password);

            int messageCount = client.Count;
            for (int i = 0; i < messageCount; i++)
            {
                var message = await client.GetMessageAsync(i);

                mailList.Add(new MailMessage
                {
                    Subject = message.Subject,
                    From = message.From.ToString(),
                    TextBody = message.TextBody,
                    HtmlBody = message.HtmlBody
                });
            }

            await client.DisconnectAsync(true);
        }
    }
    catch (Exception ex)
    {
        Console.WriteLine($"Hata: {ex.Message}");
    }

    return mailList;
}
                    

Nuget Package

Install-Package MailKit