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.
- .NET API để tạo thư mục với EWS trên MS Exchange Server
- Tạo một thư mục trên MS Exchange Server
- Tạo một thư mục con trên MS Exchange Server
- Xóa một thư mục trên MS 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#.
- Kết nối với Máy chủ MS Exchange và nhận đố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 con.
- Kiểm tra xem thư mục mẹ có tồn tại hay không bằng cách sử dụng phương thức IEWSClient.FolderExists (string, string, ExchangeFolderInfo). Nếu không, hãy tạo một cái.
- Tạo thư mục con 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 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#.
- Kết nối với MS Exchange Server và lấy đối tượng máy khách EWS trong IEWSClient.
- Kiểm tra xem thư mục có tồn tại hay không bằng cách sử dụng phương thức IEWSClient.FolderExists (string, string, ExchangeFolderInfo).
- Xóa thư mục bằng phương thức IEWSClient.DeleteFolder (string, bool).
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.