在 C# 中的 MS Exchange 服務器上創建和刪除文件夾

Microsoft Exchange Server 中,電子郵件被組織在不同的文件夾中,例如收件箱、發件箱等。此外,您可以根據需要創建自己的文件夾或子文件夾。使用 MS Exchange Server 時,您可能需要以編程方式創建自定義文件夾。在本文中,您將學習如何在 C# .NET 中使用 EWS 在 MS Exchange Server 上創建文件夾或子文件夾。此外,我們還將介紹如何刪除 Exchange Server 上的文件夾。

用於在 MS Exchange 服務器上創建文件夾的 C# .NET API

要在 MS Exchange Server 上使用 EWS 管理文件夾,我們將使用 Aspose.Email for .NET。 API 使得從 .NET 應用程序中使用 Exchange Server 的服務變得非常容易。您可以 下載 API 的 DLL 或使用以下命令從 NuGet 安裝它。

PM> Install-Package Aspose.Email

在 C# 中的 MS Exchange 服務器上創建一個文件夾

以下是使用 C# 在 MS Exchange Server 上創建文件夾的步驟。

以下代碼示例顯示如何使用 C# 中的 EWS 在 MS Exchange Server 上創建文件夾。

// 通過提供憑據創建 EWSClient 類的實例
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// 獲取收件箱 URI(在收件箱中創建文件夾)
string inbox = client.MailboxInfo.InboxUri;

// 指定文件夾名稱
string folderName1 = "EMAILNET-35054";

try
{
    // 創建文件夾
    client.UseSlashAsFolderSeparator = true;
    client.CreateFolder(client.MailboxInfo.InboxUri, folderName1);
}
catch
{
    // 做一點事
}

在 C# 中的 MS Exchange Server 上創建子文件夾

要創建子文件夾,您首先需要檢查父文件夾是否存在。如果是,只需創建子文件夾,否則先創建父文件夾。以下步驟演示瞭如何使用 C# 在 MS Exchange Server 上創建子文件夾。

以下代碼示例顯示瞭如何使用 C# 在 MS Exchange Server 上創建子文件夾。

// 通過提供憑據創建 EWSClient 類的實例
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// 獲取收件箱 URI
string inbox = client.MailboxInfo.InboxUri;

// 指定文件夾名稱
string folderName1 = "EMAILNET-35054";

// 指定子文件夾名稱
string subFolderName = "2015";
string folderName2 = folderName1 + "/" + subFolderName;

ExchangeFolderInfo rootFolderInfo = null; 

try
{
    client.UseSlashAsFolderSeparator = true;
    if (!client.FolderExists(inbox, folderName1, out rootFolderInfo))
    {
        // 創建文件夾
        rootFolderInfo = client.CreateFolder(inbox, folderName1);
    }

    // 創建子文件夾
    client.CreateFolder(inbox, folderName2);
}
catch
{
    // 做一點事
}

在 C# 中刪除 MS Exchange 服務器上的文件夾

以下是在 C# 中刪除 MS Exchange Server 上的文件夾的步驟。

以下代碼示例顯示如何使用 C# 刪除 MS Exchange Server 上的文件夾。

// 通過提供憑據創建 EWSClient 類的實例
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// 獲取收件箱 URI
string inbox = client.MailboxInfo.InboxUri;

// 指定文件夾名稱
string folderName1 = "EMAILNET-35054";

ExchangeFolderInfo rootFolderInfo = null;

try
{
    // 檢查文件夾是否存在
    if (client.FolderExists(inbox, folderName1, out rootFolderInfo))
    {
        // 刪除文件夾
        client.DeleteFolder(rootFolderInfo.Uri, true);
    }
}
catch
{
    // 做一點事
}

獲取免費的 API 許可證

您可以獲得免費的臨時許可證,以在沒有評估限制的情況下使用 Aspose.Email for .NET。

結論

在本文中,您了解瞭如何使用 C# 中的 EWS 使用 Microsoft Exchange Server 上的文件夾。借助代碼示例,您了解瞭如何在 C# 中以編程方式在 MS Exchange Server 上創建和刪除特定文件夾。此外,您可以瀏覽 文檔 以閱讀有關 Aspose.Email for .NET 的更多信息。此外,您可以通過我們的 論壇 提問。

也可以看看