Microsoft Exchange Server to platforma, która pozwala zarządzać kontaktami, e-mailami, kalendarzami, harmonogramami i zapewnia kilka funkcji współpracy. Dzięki MS Exchange Server możesz wdrożyć własny serwer pocztowy bez polegania na firmach trzecich. Dostęp do serwera MS Exchange Server można również uzyskać z poziomu aplikacji internetowych, stacjonarnych lub mobilnych za pośrednictwem usług sieciowych. W ten sposób możesz wykonywać operacje mailingu i kalendarzowania w swoich aplikacjach. W tym artykule dowiesz się, jak połączyć się z serwerem Exchange w języku C#. Pokażemy również, jak czytać wiadomości e-mail z serwera Exchange w języku C#.
- Interfejs API języka C# do odczytu wiadomości e-mail z serwera Exchange
- Połącz się z serwerem MS Exchange w języku C#
- Czytaj wiadomości e-mail z serwera Exchange przy użyciu EWS
- Czytaj wiadomości e-mail z serwera Exchange przy użyciu protokołu IMAP
Interfejs API języka C# do odczytywania wiadomości e-mail z serwera Exchange — bezpłatne pobieranie
Aspose.Email for .NET udostępnia łatwe w użyciu API do pracy z MS Exchange Server. Pozwala łączyć się z serwerem pocztowym za pomocą usługi Exchange Web Service (EWS) lub protokołu IMAP (Internet Message Access Protocol). Po nawiązaniu połączenia możesz uzyskać dostęp do elementów w skrzynce pocztowej w kilku krokach. Możesz zainstalować Aspose.Email for .NET przez NuGet lub pobierz jego bibliotekę DLL.
PM> Install-Package Aspose.Email
Połącz się z serwerem Exchange przy użyciu C#
Aspose.Email for .NET zapewnia dwa sposoby łączenia się z instancją Exchange Server: EWS i IMAP. Poniższe sekcje zawierają instrukcje nawiązywania połączenia przy użyciu jednego ze sposobów.
Połącz się z serwerem Exchange przez EWS
Poniżej przedstawiono kroki, aby połączyć się z serwerem MS Exchange za pomocą Aspose.Email for .NET.
- Użyj klasy NetworkCredential, aby ustawić poświadczenia, w tym nazwę użytkownika, hasło i domenę.
- Pobierz obiekt IEWSClient zwrócony przez metodę EWSClient.GetEWSClient(String, ICredentials).
- Użyj obiektu IEWSClient do wykonania dalszych operacji.
Poniższy przykładowy kod pokazuje, jak połączyć się z programem Exchange Server za pośrednictwem EWS przy użyciu języka C#.
// Aby uzyskać pełne przykłady i pliki danych, przejdź do 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# Połącz się z serwerem Exchange przez IMAP
Aby połączyć się z serwerem Exchange przez IMAP, upewnij się, że usługi IMAP są włączone na twoim serwerze. Po zakończeniu wykonaj poniższe czynności, aby połączyć się z serwerem Exchange.
- Utwórz instancję klasy ImapClient i podaj hosta, nazwę użytkownika i hasło do jej konstruktora.
- Ustaw opcje zabezpieczeń za pomocą właściwości ImapClient.SecurityOptions.
- Uzyskaj dostęp do elementów w skrzynce pocztowej za pomocą obiektu ImapClient.
Poniższy przykładowy kod pokazuje, jak uzyskać dostęp do programu Exchange Server za pośrednictwem protokołu IMAP przy użyciu języka C#.
// Połącz się z serwerem Exchange przy użyciu klasy ImapClient
ImapClient imapClient = new ImapClient("ex07sp1", "Administrator", "Evaluation1");
imapClient.SecurityOptions = SecurityOptions.Auto;
C# Odczyt wiadomości e-mail z serwera Exchange przy użyciu EWS
Poniżej przedstawiono kroki, aby odczytać wiadomości e-mail z serwera Exchange przy użyciu EWS.
- Utwórz instancję IEWSClient.
- Użyj metody IEWSClient.ListMessage(String), aby uzyskać dostęp do kolekcji wiadomości e-mail.
- Przejrzyj kolekcję wiadomości e-mail, aby uzyskać szczegółowe informacje o każdej wiadomości e-mail.
Poniższy przykładowy kod pokazuje, jak odczytywać wiadomości e-mail z programu Exchange Server w języku C#.
// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-email/Aspose.Email-for-.NET
// Utwórz instancję klasy ExchangeWebServiceClient, podając poświadczenia
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "UserName", "Password");
// Wywołaj metodę ListMessages, aby wyświetlić informacje o wiadomościach ze skrzynki odbiorczej
ExchangeMessageInfoCollection msgCollection = client.ListMessages(client.MailboxInfo.InboxUri);
// Przejrzyj kolekcję, aby wyświetlić podstawowe informacje
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);
}
Czytaj wiadomości e-mail z serwera Exchange przy użyciu protokołu IMAP w języku C#
Poniżej przedstawiono kroki, aby odczytać wiadomości e-mail z programu Exchange Server przy użyciu protokołu IMAP w języku C#.
- Utwórz instancję klasy ImapClient i podaj hosta, nazwę użytkownika i hasło do jej konstruktora.
- Ustaw opcje zabezpieczeń za pomocą właściwości ImapClient.SecurityOptions.
- Wybierz folder, taki jak skrzynka odbiorcza, wysłane itp., używając metody ImapClient.SelectFolder().
- Użyj metody ImapClient.ListMessages(), aby pobrać kolekcję e-maili.
- Przejrzyj kolekcję wiadomości e-mail, aby uzyskać dostęp do każdej wiadomości.
Poniższy przykładowy kod C# pokazuje, jak odczytywać wiadomości e-mail z programu Exchange Server przy użyciu protokołu IMAP.
// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-email/Aspose.Email-for-.NET
// Połącz się z serwerem Exchange przy użyciu klasy ImapClient
ImapClient imapClient = new ImapClient("ex07sp1", "Administrator", "Evaluation1");
imapClient.SecurityOptions = SecurityOptions.Auto;
// Wybierz folder Skrzynka odbiorcza
imapClient.SelectFolder(ImapFolderInfo.InBox);
// Pobierz listę wiadomości
ImapMessageInfoCollection msgCollection = imapClient.ListMessages();
foreach (ImapMessageInfo msgInfo in msgCollection)
{
Console.WriteLine(msgInfo.Subject);
}
// Odłącz się od serwera
imapClient.Dispose();
Interfejs API języka C# do odczytywania wiadomości e-mail serwera Exchange — uzyskaj bezpłatną licencję
Możesz wypróbować interfejs API bez ograniczeń ewaluacyjnych za darmo. Uzyskaj bezpłatną tymczasową licencję teraz.
Aspose Email API dla C# — Demo na żywo
Wniosek
W tym artykule nauczyłeś się, jak połączyć się z serwerem MS Exchange w języku C#. Ponadto omówiliśmy również, jak czytać wiadomości e-mail z serwera Exchange przy użyciu języka C#. Próbki kodu wyraźnie pokazały, jak uzyskać dostęp do Exchange Server przy użyciu klientów EWS i IMAP. Możesz dowiedzieć się więcej o interfejsie C# Email API, korzystając z dokumentacji.