在 C# 中管理 Exchange Server 上的收件箱規則

Microsoft Exchange Server 允許您為收件箱定義不同的規則,這些規則應用於消息,例如將消息移動到文件夾、刪除消息等。在 .NET 應用程序中使用 Exchange 服務時,您可能需要以編程方式管理收件箱規則。在本文中,您將了解如何使用 C# .NET 在 MS Exchange Server 上創建和更新收件箱規則。

用於在 Exchange Server 上創建和更新收件箱規則的 C# API

要在 MS Exchange Server 上創建和更新收件箱規則,我們將使用 Aspose.Email for .NET。 API 使得與 MS Exchange Server 的無縫協作變得非常容易。您可以 下載 API 的 DLL 或使用以下命令從 NuGet 安裝它。

PM> Install-Package Aspose.Email

在 C# 中的 Exchange Server 上創建收件箱規則

Aspose.Email for .NET 使用 Exchange Web Services (EWS) 來處理 Exchange Server 上的收件箱規則。以下是使用 C# 在 Exchange Server 上創建收件箱規則的步驟。

以下代碼示例顯示如何使用 C# 在 Exchange Server 上創建收件箱規則。

// 設置 Exchange Server Web 服務 URL、用戶名、密碼和域
string mailboxURI = "https://ex2010/ews/exchange.asmx";
string username = "test.exchange";
string password = "pwd";
string domain = "ex2010.local";

// 連接到 Exchange 服務器
NetworkCredential credential = new NetworkCredential(username, password, domain);
IEWSClient client = EWSClient.GetEWSClient(mailboxURI, credential);
Console.WriteLine("Connected to Exchange server");

// 創建新規則
InboxRule rule = new InboxRule();
rule.DisplayName = "Message from client ABC";

// 添加條件
RulePredicates newRules = new RulePredicates();
// 設置條件:主題包含字符串“ABC”
newRules.ContainsSubjectStrings.Add("ABC");
newRules.FromAddresses.Add(new MailAddress("administrator@ex2010.local", true));
rule.Conditions = newRules;

// 添加動作
RuleActions newActions = new RuleActions();
newActions.MoveToFolder = "120:AAMkADFjMjNjMmNjLWE3NzgtNGIzNC05OGIyLTAwNTgzNjRhN2EzNgAuAAAAAABbwP+Tkhs0TKx1GMf0D/cPAQD2lptUqri0QqRtJVHwOKJDAAACL5KNAAA=AQAAAA==";
rule.Actions = newActions;

// 創建規則
client.CreateInboxRule(rule);

在 C# 中更新 Exchange 服務器上的收件箱規則

以下是使用 C# 在 Exchange Server 上獲取和更新現有收件箱規則的步驟。

以下代碼示例顯示如何使用 C# 更新 MS Exchange Server 上的收件箱規則。

// 設置郵箱URI、用戶名、密碼和域
string mailboxURI = "https://ex2010/ews/exchange.asmx";
string username = "test.exchange";
string password = "pwd";
string domain = "ex2010.local";

// 連接到 Exchange 服務器
NetworkCredential credential = new NetworkCredential(username, password, domain);
IEWSClient client = EWSClient.GetEWSClient(mailboxURI, credential);

Console.WriteLine("Connected to Exchange server");

// 獲取所有收件箱規則
InboxRule[] inboxRules = client.GetInboxRules();

// 遍歷每條規則
foreach (InboxRule inboxRule in inboxRules)
{
    if (inboxRule.DisplayName == "Message from client ABC")
    {
        // 更新規則
        inboxRule.Conditions.FromAddresses[0] = new MailAddress("administrator@ex2010.local", true);
        client.UpdateInboxRule(inboxRule);
    }
}

用於在 Exchange 服務器上管理收件箱規則的 C# API - 獲取免費許可證

您可以獲得 免費臨時許可證 來管理 MS Exchanger Server 上的收件箱規則,沒有評估限制。

結論

在本文中,您了解瞭如何在 .NET 應用程序中使用 Microsoft Exchange Server 上的收件箱規則。借助代碼示例,您了解瞭如何使用 C# 在 Exchange Server 上添加或更新收件箱規則。此外,您可以瀏覽 文檔 以閱讀有關 Aspose.Email for .NET 的更多信息。此外,您可以將您的問題發佈到我們的論壇

也可以看看