Tạo và xóa các thư mục trên MS Exchange Server trong C#

Trong Microsoft Exchange Server, email được sắp xếp trong các thư mục khác nhau như hộp thư đến, hộp thư đi, v.v. Ngoài ra, bạn có thể tạo các thư mục hoặc thư mục con của riêng mình dựa trên nhu cầu của bạn. Trong khi làm việc với MS Exchange Server, bạn có thể cần tạo các thư mục tùy chỉnh theo lập trình. Trong bài viết này, bạn sẽ học cách tạo thư mục hoặc thư mục con với EWS trên MS Exchange Server trong C# .NET. Ngoài ra, chúng tôi sẽ giới thiệu cách xóa một thư mục trên Exchange Server.

C# .NET API để tạo thư mục trên MS Exchange Server

Để quản lý các thư mục bằng EWS trên MS Exchange Server, chúng tôi sẽ sử dụng Aspose.Email for .NET. API làm cho việc làm việc với các dịch vụ của Exchange Server từ bên trong các ứng dụng .NET trở nên dễ dàng hơn. Bạn có thể tải xuống DLL của API hoặc cài đặt nó từ NuGet bằng lệnh sau.

PM> Install-Package Aspose.Email

Tạo một thư mục trên MS Exchange Server trong C#

Sau đây là các bước để tạo một thư mục trên MS Exchange Server trong C#.

  • Kết nối với MS Exchange Server và lấy đối tượng máy khách EWS trong IEWSClient.
  • Chỉ định tên của thư mục gốc và thư mục bạn muốn tạo.
  • Tạo thư mục bằng phương thức IEWSClient.CreateFolder (string, string).

Mẫu mã sau đây cho thấy cách tạo một thư mục trên MS Exchange Server với EWS trong C#.

// Tạo phiên bản của lớp EWSClient bằng cách cung cấp thông tin xác thực
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Nhận URI hộp thư đến (để tạo thư mục trong hộp thư đến)
string inbox = client.MailboxInfo.InboxUri;

// Chỉ định tên thư mục
string folderName1 = "EMAILNET-35054";

try
{
    // Tạo thư mục
    client.UseSlashAsFolderSeparator = true;
    client.CreateFolder(client.MailboxInfo.InboxUri, folderName1);
}
catch
{
    // Làm việc gì đó
}

Tạo một thư mục con trên MS Exchange Server trong C#

Để tạo một thư mục con, trước tiên bạn cần kiểm tra xem thư mục mẹ có tồn tại hay không. Nếu có, chỉ cần tạo thư mục con, nếu không, hãy tạo thư mục mẹ trước. Các bước sau đây trình bày cách tạo một thư mục con trên MS Exchange Server trong C#.

Mẫu mã sau đây cho thấy cách tạo một thư mục con trên MS Exchange Server trong C#.

// Tạo phiên bản của lớp EWSClient bằng cách cung cấp thông tin xác thực
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Nhận URI hộp thư đến
string inbox = client.MailboxInfo.InboxUri;

// Chỉ định tên thư mục
string folderName1 = "EMAILNET-35054";

// Chỉ định tên thư mục con
string subFolderName = "2015";
string folderName2 = folderName1 + "/" + subFolderName;

ExchangeFolderInfo rootFolderInfo = null; 

try
{
    client.UseSlashAsFolderSeparator = true;
    if (!client.FolderExists(inbox, folderName1, out rootFolderInfo))
    {
        // Tạo thư mục
        rootFolderInfo = client.CreateFolder(inbox, folderName1);
    }

    // Tạo thư mục con
    client.CreateFolder(inbox, folderName2);
}
catch
{
    // Làm việc gì đó
}

Xóa một thư mục trên MS Exchange Server trong C#

Sau đây là các bước để xóa một thư mục trên MS Exchange Server trong C#.

Mẫu mã sau đây cho thấy cách xóa một thư mục trên MS Exchange Server trong C#.

// Tạo phiên bản của lớp EWSClient bằng cách cung cấp thông tin xác thực
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Nhận URI hộp thư đến
string inbox = client.MailboxInfo.InboxUri;

// Chỉ định tên thư mục
string folderName1 = "EMAILNET-35054";

ExchangeFolderInfo rootFolderInfo = null;

try
{
    // Kiểm tra xem thư mục có tồn tại không
    if (client.FolderExists(inbox, folderName1, out rootFolderInfo))
    {
        // Xóa thư mục
        client.DeleteFolder(rootFolderInfo.Uri, true);
    }
}
catch
{
    // Làm việc gì đó
}

Nhận giấy phép API miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để sử dụng Aspose.Email for .NET mà không có giới hạn đánh giá.

Sự kết luận

Trong bài viết này, bạn đã học cách làm việc với các thư mục trên Microsoft Exchange Server với EWS trong C#. Với sự trợ giúp của các mẫu mã, bạn đã thấy cách tạo và xóa một thư mục cụ thể trên MS Exchange Server theo chương trình trong C#. Ngoài ra, bạn có thể khám phá tài liệu để đọc thêm về Aspose.Email for .NET. Ngoài ra, bạn có thể đặt câu hỏi của mình qua diễn đàn của chúng tôi.

Xem thêm