Microsoft Exchange Serverは、電子メールを作成、送信、および管理するための便利な機能を多数提供します。これらの機能の1つは、複数のユーザーがアクセスできる共有メールボックスです。 .NETアプリケーション内からMSExchangeServerを操作しているときに、共有メールボックスから電子メールにアクセスする必要がある場合があります。したがって、この記事では、C#.NETを使用してMSExchangeServer上の共有メールボックスから電子メールメッセージを読み取る方法を学習します。
共有メールボックスから電子メールを読み取るための.NET API 共有メールボックスからメールを読む ExchangeServer上の共有メールボックスから電子メールを読み取るためのC#.NET API Aspose.Email for .NETは、電子メールを作成、送信、および処理するためのさまざまな機能を提供する電子メール処理APIです。さらに、複雑なコードを記述せずにMSOutlookおよびExchangeServerを操作できます。このAPIを使用して、MSExchangeServer上の共有メールボックスから電子メールを読み取ります。次のコマンドを使用して、APIのDLLをダウンロードするか、NuGetからインストールできます。
PM> Install-Package Aspose.Email C#のExchangeServer上の共有メールボックスから電子メールを読み取る 以下は、C#のEWSクライアントを使用してMSExchangeServerの共有メールボックスから電子メールを読み取る手順です。
ネットワーククレデンシャルを指定します。 Exchange Serverに接続し、EWSクライアントのインスタンスをIEWSClientオブジェクトに取得します。 IEWSClient.ListItems(String, String)メソッドを使用して、目的のフォルダーから配列に電子メールを取得します。 配列内の各電子メールをループして、次の手順を実行します。 IEWSClient.FetchItem(String)メソッドを使用して、各メッセージをMapiMessageオブジェクトにフェッチします。 MapiMessage.SubjectプロパティなどのMapiMessageオブジェクトを使用して、メッセージの詳細を読み取ります。 次のコードサンプルは、C#のMSExchangeServer上の共有メールボックスから電子メールメッセージを読み取る方法を示しています。
const string mailboxUri = ""; const string domain = ""; const string username = ""; const string password = ""; const string sharedEmail = ""; // クレデンシャルを設定する NetworkCredential credentials = new NetworkCredential(username, password, domain); // サーバーに接続する IEWSClient client = EWSClient.GetEWSClient(mailboxUri, credentials); // メールアイテムを取得する string[] items = client.