在 .NET 应用程序中使用 MS Exchange Server 时,您可能需要使用分发列表。在 previous post 中,您已经了解了如何创建和获取 Exchange 分发列表。在本文中,您将了解如何使用 C# 在 Exchange 通讯组列表中添加或删除成员。
C# API 添加和删除 Exchange 分发列表的成员
为了与 MS Exchange Server 上的分发列表成员一起工作,我们将使用 Aspose.Email for .NET。它是一个众所周知的 API,用于创建电子邮件客户端应用程序并与 MS Exchange Server 一起使用。您可以 下载 API 的 DLL 或使用以下命令从 NuGet 安装它。
PM> Install-Package Aspose.Email
在 C# 中将成员添加到 MS Exchange 分发列表
以下是在 C# .NET 中将成员添加到 MS Exchange 分发列表的步骤。
- 首先,连接到 Exchange Server 并将 EWS 客户端的实例放入 IEWSClient 对象中。
- 然后,使用 IEWSClient.ListDistributionLists() 方法将分发列表放入 ExchangeDistributionList 数组。
- 之后,创建 MailAddressCollection 类的实例并将成员添加到集合中。
- 最后,使用 IEWSClient.AddToDistributionList(ExchangeDistributionList, MailAddressCollection) 方法将成员添加到特定分发列表。
以下代码示例演示如何在 C# 中将成员添加到 Exchange 通讯组列表。
// 连接到 Exchange 服务器
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
// 获取所有分发列表
ExchangeDistributionList[] distributionLists = client.ListDistributionLists();
// 创建新列表并添加成员
MailAddressCollection newMembers = new MailAddressCollection();
newMembers.Add("address4@host.com");
newMembers.Add("address5@host.com");
// 合并成员到列表
client.AddToDistributionList(distributionLists[0], newMembers);
C# 从 MS Exchange 分发列表中删除成员
以下是使用 C# .NET 从 MS Exchange 分发列表中删除成员的步骤。
- 首先,连接到 Exchange Server 并将 EWS 客户端的实例放入 IEWSClient 对象中。
- 然后,使用 IEWSClient.ListDistributionLists() 方法将分发列表放入 ExchangeDistributionList 数组。
- 之后,使用 IEWSClient.FetchDistributionList(ExchangeDistributionList) 方法获取特定列表的引用。
- 然后,创建一个 MailAddressCollection 类的实例并添加要删除的成员。
- 最后,使用 IEWSClient.DeleteFromDistributionList(ExchangeDistributionList, MailAddressCollection) 方法从通讯组列表中删除成员。
以下代码示例演示如何在 C# 中从 Exchange 通讯组列表中删除成员。
// 连接到 Exchange 服务器
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
// 获取所有分发列表
ExchangeDistributionList[] distributionLists = client.ListDistributionLists();
// 从特定列表中获取成员
MailAddressCollection members = client.FetchDistributionList(distributionLists[0]);
// 创建新列表并添加要删除的成员
MailAddressCollection membersToDelete = new MailAddressCollection();
membersToDelete.Add(members[0]);
membersToDelete.Add(members[1]);
// 删除成员
client.DeleteFromDistributionList(distributionLists[0], membersToDelete);
与 Exchange 分发列表一起使用的 C# API - 获取免费许可证
您可以获得 免费的临时许可证 以使用 Aspose.Email for .NET,而不受评估限制。
结论
在本文中,您学习了如何在 Microsoft Exchange Server 上管理分发列表中的成员。特别是,您已经了解了如何在 C# 中以编程方式在 Exchange 分发列表中添加或删除成员。此外,您可以浏览 文档 以了解更多关于 Aspose.Email for .NET 的信息。此外,您可以通过我们的 论坛 提问。