Microsoft Exchange Server cho phép bạn xác định các quy tắc khác nhau cho hộp thư đến, được áp dụng cho các thư như di chuyển thư vào một thư mục, xóa thư, v.v. Trong khi làm việc với các dịch vụ Exchange từ bên trong các ứng dụng .NET , bạn có thể cần quản lý các quy tắc hộp thư đến theo chương trình. Trong bài viết này, bạn sẽ học cách tạo và cập nhật các quy tắc hộp thư đến trên MS Exchange Server trong C# .NET.
- .NET API để quản lý quy tắc hộp thư đến trên máy chủ Exchange
- Tạo quy tắc hộp thư đến trên máy chủ Exchange
- Cập nhật quy tắc hộp thư đến trên máy chủ Exchange
API C# để tạo và cập nhật quy tắc hộp thư đến trên máy chủ Exchange
Để tạo và cập nhật quy tắc hộp thư đến trên MS Exchange Server, chúng tôi sẽ sử dụng Aspose.Email for .NET. API giúp làm việc liền mạch với MS Exchange Server 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 Quy tắc Hộp thư đến trên Máy chủ Exchange trong C#
Aspose.Email for .NET sử dụng Exchange Web Services (EWS) để làm việc với các quy tắc hộp thư đến trên Exchange Server. Sau đây là các bước để tạo quy tắc hộp thư đến trên Exchange Server trong C#.
- Đầu tiên, kết nối với Exchange Server và lấy phiên bản của máy khách EWS thành đối tượng IEWSClient.
- Sau đó, tạo một đối tượng của lớp InboxRule.
- Đặt tên quy tắc bằng thuộc tính InboxRule.DisplayName.
- Tạo một thể hiện của lớp RulePredicates và chỉ định các điều kiện.
- Gán cá thể RulePredicates cho thuộc tính InboxRule.Conditions.
- Tạo một phiên bản của lớp RuleActions và thiết lập các hành động.
- Gán cá thể RuleAction cho thuộc tính InboxRule.Actions.
- Cuối cùng, gọi IEWSClient.CreateInboxRule (InboxRule) để tạo quy tắc.
Mẫu mã sau đây cho thấy cách tạo quy tắc hộp thư đến trên Exchange Server trong C#.
// Đặt URL dịch vụ web Exchange Server, tên người dùng, mật khẩu và miền
string mailboxURI = "https://ex2010/ews/exchange.asmx";
string username = "test.exchange";
string password = "pwd";
string domain = "ex2010.local";
// Kết nối với Máy chủ Exchange
NetworkCredential credential = new NetworkCredential(username, password, domain);
IEWSClient client = EWSClient.GetEWSClient(mailboxURI, credential);
Console.WriteLine("Connected to Exchange server");
// Tạo quy tắc mới
InboxRule rule = new InboxRule();
rule.DisplayName = "Message from client ABC";
// Thêm điều kiện
RulePredicates newRules = new RulePredicates();
// Đặt điều kiện: chủ đề chứa chuỗi "ABC"
newRules.ContainsSubjectStrings.Add("ABC");
newRules.FromAddresses.Add(new MailAddress("administrator@ex2010.local", true));
rule.Conditions = newRules;
// Thêm hành động
RuleActions newActions = new RuleActions();
newActions.MoveToFolder = "120:AAMkADFjMjNjMmNjLWE3NzgtNGIzNC05OGIyLTAwNTgzNjRhN2EzNgAuAAAAAABbwP+Tkhs0TKx1GMf0D/cPAQD2lptUqri0QqRtJVHwOKJDAAACL5KNAAA=AQAAAA==";
rule.Actions = newActions;
// Tạo quy tắc
client.CreateInboxRule(rule);
Cập nhật Quy tắc Hộp thư đến trên Máy chủ Exchange trong C#
Sau đây là các bước để tìm nạp và cập nhật quy tắc hộp thư đến hiện có trên Exchange Server trong C#.
- Đầu tiên, kết nối với Exchange Server và lấy phiên bản của máy khách EWS thành đối tượng IEWSClient.
- Sau đó, gọi phương thức IEWSClient.GetInboxRules() để lấy tất cả các quy tắc trong mảng InboxRule.
- Lặp qua từng InboxRule trong mảng.
- Lọc các quy tắc bắt buộc dựa trên một số điều kiện.
- Cập nhật các điều kiện hoặc hành động của quy tắc.
- Cuối cùng, gọi phương thức IEWSClient.UpdateInboxRule (InboxRule) để cập nhật quy tắc hộp thư đến.
Mẫu mã sau đây cho thấy cách cập nhật quy tắc hộp thư đến trên Máy chủ MS Exchange trong C#.
// Đặt hộp thưURI, tên người dùng, mật khẩu và miền
string mailboxURI = "https://ex2010/ews/exchange.asmx";
string username = "test.exchange";
string password = "pwd";
string domain = "ex2010.local";
// Kết nối với Máy chủ Exchange
NetworkCredential credential = new NetworkCredential(username, password, domain);
IEWSClient client = EWSClient.GetEWSClient(mailboxURI, credential);
Console.WriteLine("Connected to Exchange server");
// Nhận tất cả các quy tắc hộp thư đến
InboxRule[] inboxRules = client.GetInboxRules();
// Lặp lại từng quy tắc
foreach (InboxRule inboxRule in inboxRules)
{
if (inboxRule.DisplayName == "Message from client ABC")
{
// Cập nhật quy tắc
inboxRule.Conditions.FromAddresses[0] = new MailAddress("administrator@ex2010.local", true);
client.UpdateInboxRule(inboxRule);
}
}
API C# để quản lý quy tắc hộp thư đến trên máy chủ Exchange - Nhận giấy phép miễn phí
Bạn có thể nhận giấy phép tạm thời miễn phí để quản lý các quy tắc hộp thư đến trên MS Exchanger Server 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 quy tắc hộp thư đến trên Microsoft Exchange Server từ bên trong các ứng dụng .NET. Với sự trợ giúp của các mẫu mã, bạn đã biết cách thêm hoặc cập nhật các quy tắc hộp thư đến trên Exchange Server 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ể đăng các truy vấn của mình lên diễn đàn của chúng tôi.