เพิ่มหรือลบผู้ติดต่อจาก Microsoft Exchange Server ใน C#

Microsoft Exchange Server เป็นแพลตฟอร์มยอดนิยมที่ให้บริการการทำงานร่วมกันต่างๆ เช่น อีเมล ปฏิทิน ผู้ติดต่อ ฯลฯ ใน โพสต์ก่อนหน้า เราได้แสดงวิธีอ่านอีเมลจาก Microsoft Exchange Server อย่างไรก็ตาม คุณอาจต้องทำงานกับผู้ติดต่อบน Exchange Server โดยทางโปรแกรม ในบทความนี้ คุณจะได้เรียนรู้วิธีเพิ่ม ลบ หรืออัปเดตผู้ติดต่อบน Microsoft Exchange Server ใน C# .NET

C# .NET API เพื่อเข้าถึงผู้ติดต่อบน MS Exchange Server

ในการทำงานกับผู้ติดต่อบน Microsoft Exchange Server เราจะใช้ Aspose.Email for .NET เป็น API ที่รู้จักกันดีในการทำงานร่วมกับไคลเอนต์อีเมลต่างๆ จากภายในแอปพลิเคชัน .NET คุณสามารถ ดาวน์โหลด DLL ของ API หรือติดตั้งจาก NuGet โดยใช้คำสั่งต่อไปนี้

PM> Install-Package Aspose.Email

เพิ่มผู้ติดต่อไปยัง MS Exchange Server ใน C

ต่อไปนี้เป็นขั้นตอนในการเพิ่มผู้ติดต่อไปยัง Microsoft Exchange Server ใน C#

  • ขั้นแรก สร้างและเริ่มต้นวัตถุ NetworkCredential ด้วยชื่อผู้ใช้ รหัสผ่าน และโดเมน
  • จากนั้น เริ่มต้น IEWSClient ด้วยกล่องจดหมาย URI และวัตถุ NetworkCredential
  • สร้างวัตถุของคลาส Contact และตั้งค่าคุณสมบัติ เช่น ชื่อ งาน เพศ โทรศัพท์ บุคคลที่เกี่ยวข้อง ฯลฯ
  • สุดท้าย โทรหา EWSClient.CreateContact(Contact) เพื่อเพิ่มผู้ติดต่อ

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการเพิ่มผู้ติดต่อไปยัง Microsoft Exchange Server ใน C#

string mailboxUri = "https://ex2010/ews/exchange.asmx";
string username = "test.exchange";
string password = "pwd";
string domain = "ex2010.local";
NetworkCredential credentials = new NetworkCredential(username, password, domain);
IEWSClient client = EWSClient.GetEWSClient(mailboxUri, credentials);

// สร้างผู้ติดต่อใหม่
Contact contact = new Contact();

// ตั้งค่าข้อมูลทั่วไป
contact.Gender = Gender.Male;
contact.DisplayName = "Frank Lin";
contact.CompanyName = "ABC Co.";
contact.JobTitle = "Executive Manager";

// เพิ่มหมายเลขโทรศัพท์
contact.PhoneNumbers.Add(new PhoneNumber { Number = "123456789", Category = PhoneNumberCategory.Home });

// ผู้ที่เกี่ยวข้องของผู้ติดต่อ
contact.AssociatedPersons.Add(new AssociatedPerson { Name = "Catherine", Category = AssociatedPersonCategory.Spouse });
contact.AssociatedPersons.Add(new AssociatedPerson { Name = "Bob", Category = AssociatedPersonCategory.Child });
contact.AssociatedPersons.Add(new AssociatedPerson { Name = "Merry", Category = AssociatedPersonCategory.Sister });

// URL
contact.Urls.Add(new Url { Href = "www.blog.com", Category = UrlCategory.Blog });
contact.Urls.Add(new Url { Href = "www.homepage.com", Category = UrlCategory.HomePage });
            
// ตั้งค่าที่อยู่อีเมลของผู้ติดต่อ
contact.EmailAddresses.Add(new EmailAddress { Address = "Frank.Lin@Abc.com", DisplayName = "Frank Lin", Category = EmailAddressCategory.Email1 });

try
{
    client.CreateContact(contact);
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message);
}

ลบผู้ติดต่อจาก MS Exchange Server ใน C

คุณยังสามารถลบผู้ติดต่อจาก MS Exchange Server หากต้องการกรองรายชื่อ คุณสามารถใช้ชื่อ อีเมล หรือคุณสมบัติอื่นๆ ที่เหมาะสมได้ ต่อไปนี้เป็นขั้นตอนในการลบผู้ติดต่อออกจาก Microsoft Exchange Server ใน C#

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการลบผู้ติดต่อจาก Microsoft Exchange Server ใน C#

// เริ่มต้น EWSClient
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

string strContactToDelete = "John Teddy";

// รับรายชื่อ
Contact[] contacts = client.GetContacts(client.MailboxInfo.ContactsUri);

// กรองรายชื่อ
foreach (Contact contact in contacts)
{
    // ลบผู้ติดต่อ
    if (contact.DisplayName.Equals(strContactToDelete))
        client.DeleteItem(contact.Id.EWSId, DeletionOptions.DeletePermanently);

}
client.Dispose();

อัปเดตผู้ติดต่อบน Exchange Server ใน C

คุณยังสามารถอัปเดตผู้ติดต่อบน MS Exchange Server โดยใช้ Aspose.Email for .NET ต่อไปนี้เป็นขั้นตอนในการดำเนินการนี้

  • ขั้นแรก สร้างและเริ่มต้นวัตถุ NetworkCredential ด้วยชื่อผู้ใช้ รหัสผ่าน และโดเมน
  • จากนั้น เริ่มต้น IEWSClient ด้วยกล่องจดหมาย URI และวัตถุ NetworkCredential
  • รับผู้ติดต่อจาก Exchange Server โดยใช้เมธอด IEWSClient.GetContacts(EWSClient.MailboxInfo.ContactsUri)
  • หลังจากนั้นวนซ้ำรายชื่อและกรองรายชื่อที่ต้องการ
  • สุดท้าย ให้อัปเดตคุณสมบัติของผู้ติดต่อและเรียก IEWSClient.UpdateContact(Contact) เพื่อบันทึก

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการอัพเดตผู้ติดต่อบน MS Exchange Server ใน C#

string mailboxUri = "https://ex2010/ews/exchange.asmx";
string username = "test.exchange";
string password = "pwd";
string domain = "ex2010.local";
NetworkCredential credentials = new NetworkCredential(username, password, domain);

// เริ่มต้น EWSClient
IEWSClient client = EWSClient.GetEWSClient(mailboxUri, credentials);

// รายชื่อผู้ติดต่อทั้งหมดและวนซ้ำผู้ติดต่อทั้งหมด
Contact[] contacts = client.GetContacts(client.MailboxInfo.ContactsUri);

// เลือกผู้ติดต่อที่ต้องการ
Contact contact = contacts[0];
Console.WriteLine("Name: " + contact.DisplayName);
contact.DisplayName = "David Ch";

// อัพเดทรายชื่อติดต่อ
client.UpdateContact(contact);

รับใบอนุญาต API ฟรี

คุณสามารถรับ ใบอนุญาตชั่วคราวฟรี เพื่อใช้ Aspose.Email for .NET โดยไม่มีข้อจำกัดในการประเมิน

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีการทำงานกับผู้ติดต่อบน Microsoft Exchange Server ใน C# เราได้สาธิตวิธีเพิ่ม ลบ และอัปเดตผู้ติดต่อจาก MS Exchange Server โดยทางโปรแกรมใน C# นอกจากนี้ คุณสามารถสำรวจ เอกสารประกอบ เพื่ออ่านเพิ่มเติมเกี่ยวกับ Aspose.Email for .NET นอกจากนี้ คุณสามารถถามคำถามผ่าน ฟอรัม ของเรา

ดูสิ่งนี้ด้วย