Microsoft Exchange Server 提供了一系列有用的功能来创建、发送和管理电子邮件。其中一项功能是可以由多个用户访问的共享邮箱。在 .NET 应用程序中使用 MS Exchange Server 时,您可能需要从共享邮箱访问电子邮件。因此,在本文中,您将学习如何使用 C# .NET 从 MS Exchange Server 上的共享邮箱中读取电子邮件。
C# .NET API 从 Exchange Server 上的共享邮箱读取电子邮件
Aspose.Email for .NET 是一个电子邮件处理 API,它提供了一系列功能来创建、发送和处理电子邮件。此外,它允许您使用 MS Outlook 和 Exchange Server,而无需编写复杂的代码。我们将使用此 API 从 MS Exchange Server 上的共享邮箱中读取电子邮件。您可以 下载 API 的 DLL 或使用以下命令从 NuGet 安装它。
PM> Install-Package Aspose.Email
在 C# 中从 Exchange Server 上的共享邮箱中读取电子邮件
以下是使用 C# 中的 EWS 客户端从 MS Exchange Server 上的共享邮箱读取电子邮件的步骤。
- 指定网络凭据。
- 连接到 Exchange Server 并将 EWS 客户端的实例放入 IEWSClient 对象中。
- 使用 IEWSClient.ListItems(String, String) 方法将电子邮件从所需文件夹获取到数组中。
- 遍历数组中的每封电子邮件并执行以下步骤:
- 使用 IEWSClient.FetchItem(String) 方法将每条消息提取到 MapiMessage 对象中。
- 使用 MapiMessage 对象(例如 MapiMessage.Subject 属性)读取消息的详细信息。
以下代码示例展示了如何使用 C# 从 MS Exchange Server 上的共享邮箱中读取电子邮件。
const string mailboxUri = "<HOST>";
const string domain = "";
const string username = "<EMAIL ADDRESS>";
const string password = "<PASSWORD>";
const string sharedEmail = "<SHARED EMAIL ADDRESS>";
// 设置凭据
NetworkCredential credentials = new NetworkCredential(username, password, domain);
// 连接到服务器
IEWSClient client = EWSClient.GetEWSClient(mailboxUri, credentials);
// 获取电子邮件项目
string[] items = client.ListItems(sharedEmail, "Inbox");
// 循环浏览电子邮件并获取每条消息
foreach (string item in items)
{
MapiMessage msg = client.FetchItem(item);
Console.WriteLine("Subject:" + msg.Subject);
}
client.Dispose();
获取免费 API 许可证
您可以获得 免费的临时许可证 使用 Aspose.Email for .NET,没有评估限制。
结论
在本文中,您学习了如何使用 C# 从 Microsoft Exchange Server 上的共享邮箱中读取电子邮件。要将此功能集成到您的 .NET 应用程序中,您只需安装 API 并使用提供的代码示例。此外,您可以从 documentation 中了解 Aspose.Email for .NET 的其他功能。此外,您可以通过我们的 论坛 提问。