Čtení e-mailů z MS Exchange Server pomocí C#

Microsoft Exchange Server je platforma, která umožňuje spravovat kontakty, e-maily, kalendáře, plány a poskytuje několik funkcí pro spolupráci. S MS Exchange Server můžete nasadit svůj vlastní poštovní server, aniž byste se spoléhali na třetí strany. K MS Exchange Server lze také přistupovat z webových, desktopových nebo mobilních aplikací prostřednictvím webových služeb. Ve svých aplikacích tak můžete provádět operace zasílání pošty a kalendáře. V tomto článku se dozvíte, jak se připojit k Exchange Serveru v C#. Také si ukážeme, jak číst e-maily z Exchange Server v C#.

C# API pro čtení e-mailů ze serveru Exchange – ke stažení zdarma

Aspose.Email for .NET poskytuje snadno použitelné API pro práci s MS Exchange Server. Umožňuje vám připojit se k poštovnímu serveru pomocí webové služby Exchange (EWS) nebo protokolu IMAP (Internet Message Access Protocol). Jakmile se připojíte, můžete v několika krocích přistupovat k položkám ve schránce. Aspose.Email for .NET můžete nainstalovat přes NuGet nebo stáhnout jeho DLL.

PM> Install-Package Aspose.Email

Připojení k serveru Exchange pomocí C#

Aspose.Email for .NET poskytuje dva způsoby připojení k instanci Exchange Server: EWS a IMAP. V následujících částech jsou uvedeny kroky, jak vytvořit připojení jedním ze způsobů.

Připojte se k serveru Exchange přes EWS

Následují kroky pro připojení k MS Exchange Server pomocí Aspose.Email for .NET.

Následující ukázka kódu ukazuje, jak se připojit k Exchange Server přes EWS pomocí C#.

// Úplné příklady a datové soubory najdete na https://github.com/aspose-email/Aspose.Email-for-.NET
private static IEWSClient GetExchangeEWSClient()
{
    const string mailboxUri = "https://outlook.office365.com/ews/exchange.asmx";
    const string domain = @"";
    const string username = @"username@ASE305.onmicrosoft.com";
    const string password = @"password";
    NetworkCredential credentials = new NetworkCredential(username, password, domain);
    IEWSClient client = EWSClient.GetEWSClient(mailboxUri, credentials);
    return client;
}

C# Připojte se k serveru Exchange přes IMAP

Chcete-li se připojit k serveru Exchange přes IMAP, ujistěte se, že jsou na vašem serveru povoleny služby IMAP. Po dokončení se připojte k serveru Exchange podle následujících kroků.

  • Vytvořte instanci třídy ImapClient a poskytněte jejímu konstruktoru hostitele, uživatelské jméno a heslo.
  • Nastavte možnosti zabezpečení pomocí vlastnosti ImapClient.SecurityOptions.
  • Přístup k položkám v poštovní schránce pomocí objektu ImapClient.

Následující ukázka kódu ukazuje, jak přistupovat k Exchange Server přes IMAP pomocí C#.

// Připojte se k Exchange Server pomocí třídy ImapClient
ImapClient imapClient = new ImapClient("ex07sp1", "Administrator", "Evaluation1");
imapClient.SecurityOptions = SecurityOptions.Auto;

C# Čtení e-mailů ze serveru Exchange pomocí EWS

Níže jsou uvedeny kroky ke čtení e-mailových zpráv ze serveru Exchange Server pomocí EWS.

  • Vytvořte instanci IEWSClient.
  • Pro přístup ke kolekci e-mailů použijte metodu IEWSClient.ListMessage(String).
  • Procházejte sbírku e-mailů a získejte podrobnosti o každé e-mailové zprávě.

Následující ukázka kódu ukazuje, jak číst e-maily z Exchange Server v C#.

// Úplné příklady a datové soubory najdete na https://github.com/aspose-email/Aspose.Email-for-.NET
// Vytvořte instanci třídy ExchangeWebServiceClient zadáním pověření
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "UserName", "Password");

// Call ListMessages metoda pro výpis informací o zprávách z Inboxu
ExchangeMessageInfoCollection msgCollection = client.ListMessages(client.MailboxInfo.InboxUri);

// Procházením kolekce zobrazíte základní informace
foreach (ExchangeMessageInfo msgInfo in msgCollection)
{
    Console.WriteLine("Subject: " + msgInfo.Subject);
    Console.WriteLine("From: " + msgInfo.From.ToString());
    Console.WriteLine("To: " + msgInfo.To.ToString());
    Console.WriteLine("Message ID: " + msgInfo.MessageId);
    Console.WriteLine("Unique URI: " + msgInfo.UniqueUri);
}

Čtení e-mailů z Exchange Server pomocí IMAP v C#

Níže jsou uvedeny kroky ke čtení e-mailů ze serveru Exchange Server pomocí protokolu IMAP v jazyce C#.

  • Vytvořte instanci třídy ImapClient a poskytněte jejímu konstruktoru hostitele, uživatelské jméno a heslo.
  • Nastavte možnosti zabezpečení pomocí vlastnosti ImapClient.SecurityOptions.
  • Pomocí metody ImapClient.SelectFolder() vyberte složku, jako je doručená pošta, odeslaná pošta atd.
  • Použijte metodu ImapClient.ListMessages() k získání sbírky e-mailů.
  • Projděte sbírku e-mailů a získejte přístup ke každé zprávě.

Následující ukázka kódu C# ukazuje, jak číst e-maily ze serveru Exchange Server pomocí protokolu IMAP.

// Úplné příklady a datové soubory najdete na https://github.com/aspose-email/Aspose.Email-for-.NET
// Připojte se k Exchange Server pomocí třídy ImapClient
ImapClient imapClient = new ImapClient("ex07sp1", "Administrator", "Evaluation1");
imapClient.SecurityOptions = SecurityOptions.Auto;

// Vyberte složku Doručená pošta
imapClient.SelectFolder(ImapFolderInfo.InBox);

// Získejte seznam zpráv
ImapMessageInfoCollection msgCollection = imapClient.ListMessages();
foreach (ImapMessageInfo msgInfo in msgCollection)
{
    Console.WriteLine(msgInfo.Subject);
}
// Odpojte se od serveru
imapClient.Dispose();

C# API pro čtení e-mailů Exchange Server - Získejte bezplatnou licenci

API si můžete vyzkoušet bez omezení hodnocení zdarma. Získejte bezplatnou dočasnou licenci nyní.

Aspose Email API pro C# - Živá ukázka

Závěr

V tomto článku jste se naučili, jak se připojit k MS Exchange Server v C#. Kromě toho jsme také probrali, jak číst e-maily z Exchange Server pomocí C#. Ukázky kódu explicitně ukazují, jak přistupovat k serveru Exchange Server pomocí klientů EWS a IMAP. Více o C# Email API můžete prozkoumat pomocí dokumentace.

Viz také

Vytvářet a odesílat e-maily pomocí C#Čtení e-mailů pomocí protokolu IMAP v PythonPřipojit k serveru SMTP pomocí Python
Skupinové zprávy z PST podle vláken konverzace pomocí C# .NET