การจัดการรายการ Outlook ผ่าน Aspose.Email Graph Client
จัดการเหตุการณ์ปฏิทิน
Aspose.Email มี API เพื่อเข้าถึง, จัดการ, และโต้ตอบกับเหตุการณ์ปฏิทิน สำหรับวัตถุประสงค์เหล่านี้ มีเมธอดต่อไปนี้ใน IGraphClient อินเทอร์เฟซ:
- ListCalendars() - ดึงคอลเลกชันของข้อมูลปฏิทิน
- ListCalendarItems(string id) - ดึงคอลเลกชันของรายการปฏิทินที่เชื่อมโยงกับ ID ปฏิทินที่ระบุ
- FetchCalendarItem(string id) - ดึงรายการปฏิทินที่ระบุโดยใช้ ID ที่ให้
- CreateCalendarItem(string calId, MapiCalendar mapiCalendar) - สร้างรายการปฏิทินใหม่ในปฏิทินที่ระบุ
- UpdateCalendarItem(MapiCalendar mapiCalendar) - อัปเดตรายการปฏิทินที่มีอยู่
- UpdateCalendarItem(MapiCalendar mapiCalendar, UpdateSettings updateSettings) - อัปเดตรายการปฏิทินที่มีอยู่ด้วยการตั้งค่าอัปเดตที่ระบุ
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีโต้ตอบกับเหตุการณ์ปฏิทินในไคลเอนต์ Microsoft Graph API โดยใช้เมธอดที่ให้โดย Aspose.Email:
// List Calendars
CalendarInfoCollection calendars = graphClient.ListCalendars();
// List Calendar Items
MapiCalendarCollection calendarItems = graphClient.ListCalendarItems("calendarId");
// Fetch Calendar Item
MapiCalendar calendarItem = graphClient.FetchCalendarItem("calendarItemId");
// Create Calendar Item
MapiCalendar newCalendarItem = new MapiCalendar(
location: "Conference Room",
summary: "Team Meeting",
description: "Discuss project status and updates.",
startDate: startDate,
endDate: endDate
);
MapiCalendar createdCalendarItem = graphClient.CreateCalendarItem("calendarId", newCalendarItem);
// Update Calendar Item
createdCalendarItem.Location = "Zoom Meeting";
MapiCalendar updatedCalendarItem = graphClient.UpdateCalendarItem(createdCalendarItem);
จัดการหมวดหมู่ข้อความ
เพื่อจัดการหมวดหมู่ด้วย MS Graph ผ่าน Aspose.Email สำหรับ .NET ให้ใช้เมธอดต่อไปนี้และลองตัวอย่างโค้ดด้านล่าง:
// create a custom category with Orange color
var category = client.CreateCategory("My custom category", CategoryPreset.Preset1);
// fetch a category
var fetchedCategory = client.FetchCategory(category.Id);
// update category (change color to brown)
fetchedCategory.Preset = CategoryPreset.Preset2;
var updatedCategory = client.UpdateCategory(fetchedCategory);
// list available categories
var categories = client.ListCategories();
foreach (var cat in categories)
{
Console.WriteLine(cat.DisplayName);
}
// delete a category
client.Delete(fetchedCategory.Id);
จัดการผู้ติดต่อ
Aspose.Email มี API เพื่อเข้าถึง, จัดการ, และโต้ตอบกับรายการผู้ติดต่อ สำหรับวัตถุประสงค์เหล่านี้ มีเมธอดต่อไปนี้ใน IGraphClient อินเทอร์เฟซ:
- ListContacts(string id) - ดึงคอลlection ของผู้ติดต่อ MAPI ที่เชื่อมโยงกับ ID โฟลเดอร์ที่ระบุ
- FetchContact(string id) - ดึงข้อมูลผู้ติดต่อที่ระบุโดยใช้ ID ของรายการที่ให้
- CreateContact(string folderId, MapiContact contact) - สร้างรายชื่อผู้ติดต่อใหม่ในโฟลเดอร์ที่ระบุ
- UpdateContact(MapiContact contact) - อัปเดตรายชื่อผู้ติดต่อที่มีอยู่
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการโต้ตอบกับรายชื่อผู้ติดต่อในไคลเอนต์ Microsoft Graph API โดยใช้เมธอดที่ให้โดย Aspose.Email:
// List Contacts
MapiContactCollection contacts = graphClient.ListContacts("contactFolderId");
// Fetch Contact
MapiContact contact = graphClient.FetchContact("contactId");
// Create Contact
MapiContact newContact = new MapiContact("Jane Smith", "jane.smith@example.com", "XYZ Corporation", "777-888-999");
MapiContact createdContact = graphClient.CreateContact("contactFolderId", newContact);
// Update Contact
createdContact.Telephones.PrimaryTelephoneNumber = "888-888-999";
MapiContact updatedContact = graphClient.UpdateContact(createdContact);
จัดการการแทนที่
เพื่อจัดการการแทนที่ด้วย MS Graph ผ่าน Aspose.Email สำหรับ .NET ให้ใช้เมธอดต่อไปนี้:
// Create an user's override
var userOverride = client.CreateOrUpdateOverride
(new MailAddress("JohnBrown@someorg.com", "JohnBrown"), ClassificationType.Focused);
// list the overrides
var overrides = client.ListOverrides();
// update override
userOverride.Sender.DisplayName = "John Brown";
var updatedOverride = client.UpdateOverride(userOverride);
// delete override
client.Delete(updatedOverride.Id);
จัดการกฎอินบ็อกซ์
เพื่อจัดการกฎด้วย MS Graph ผ่าน Aspose.Email สำหรับ .NET ให้ใช้เมธอดต่อไปนี้:
// Create a rule
var rule = PrepareRule("user@someorg.com", "User");
var createdRule = client.CreateRule(rule);
// List all rules defined for Inbox
var rules = client.ListRules();
// Fetch a rule
var fetchedRule = client.FetchRule(createdRule.RuleId);
// Update a rule
fetchedRule.DisplayName = "Renamed rule";
fetchedRule.IsEnabled = false;
var updatedRule = client.UpdateRule(createdRule);
// Delete a rule
client.Delete(updatedRule.RuleId);
InboxRule PrepareRule(string email, string displayName)
{
var rule = new InboxRule()
{
DisplayName = "My rule",
Priority = 1,
IsEnabled = true,
Conditions = new RulePredicates(),
Actions = new RuleActions()
};
rule.Conditions.ContainsSenderStrings = new StringCollection { displayName };
rule.Actions.ForwardToRecipients = new MailAddressCollection
{ new MailAddress(email, displayName, true) };
rule.Actions.StopProcessingRules = true;
return rule;
}
จัดการสมุดโน้ต OneNote
เพื่อจัดการสมุดโน้ตด้วย MS Graph ผ่าน Aspose.Email สำหรับ .NET ให้ใช้เมธอดต่อไปนี้:
// create a OneNote notebook
var newNotebook = new Notebook()
{
DisplayName = "My Notebook"
};
var createdNotebook = client.CreateNotebook(newNotebook);
// fetch a notebook
var fetchedNotebook = client.FetchNotebook(createdNotebook.Id);
// list the notebooks
var notebooks = client.ListNotebooks();
จัดการงานใน Microsoft Graph
Aspose.Email ให้ API แก่ผู้พัฒนาเพื่อเข้าถึง, จัดการ, และทำงานกับงานและรายการงานของผู้ใช้โดยใช้เมธอดต่อไปนี้ของ IGraphClient อินเทอร์เฟซ:
- ListTaskLists() - ดึงคอลเลกชันของข้อมูลรายการงาน.
- GetTaskList(string id) - ดึงรายการงานเฉพาะตาม ID ที่ให้มา.
- DeleteTaskList(string id) - ลบรายการงานที่ระบุ -ListTasks(string id) - ดึงชุดของภารกิจที่เชื่อมโยงกับ ID ของรายการภารกิจที่ระบุ.
- FetchTask(string id) - ดึงภารกิจเฉพาะตาม ID ที่ให้มา.
- CreateTask(MapiTask task, string taskListUri) - สร้างภารกิจใหม่ในรายการภารกิจที่ระบุ.
- UpdateTask(MapiTask task) - อัปเดตภารกิจที่มีอยู่ด้วยข้อมูลที่ให้มา.
- UpdateTask(MapiTask task, UpdateSettings updateSettings) - อัปเดตภารกิจที่มีอยู่ด้วยการตั้งค่าการอัปเดตที่ระบุ.
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีจัดการรายการงาน:
// List Task Lists
var taskLists = graphClient.ListTaskLists();
foreach (var tList in taskLists)
{
Console.WriteLine($"Task List: {tList.DisplayName}");
}
// Get Task List
var taskList = graphClient.GetTaskList("taskListId");
// Delete Task List
graphClient.DeleteTaskList("taskListId");
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีจัดการงาน:
// List Tasks in a Task List
MapiTaskCollection tasks = graphClient.ListTasks("taskListId");
// Fetch Task
MapiTask task = graphClient.FetchTask("taskId");
// Create Task
var newTask = new MapiTask
{
Subject = "New Task",
DueDate = new DateTime(2023, 12, 31),
Status = MapiTaskStatus.NotStarted
};
MapiTask createdTask = graphClient.CreateTask(newTask, "taskListUri");
// Update Task
createdTask.Subject = "Updated Task Subject";
MapiTask updatedTask = graphClient.UpdateTask(createdTask);
// Update Task with UpdateSettings
var updateSettings = new UpdateSettings { SkipAttachments = true };
MapiTask updatedTaskWithSettings = graphClient.UpdateTask(createdTask, updateSettings);