我使用以下示例代码在Outlook中查找特定联系人:
string phoneNumber = "+4922334455";
Outlook.ContactItem contact;
contact = (Outlook.ContactItem)contactItems.Find(String.Format("[HomeTelephoneNumber]='{0}'", phoneNumber));
但是如果Outlook中的条目被格式化(例如+49(2233)4455),我会遇到问题。
如何搜索此号码,以便匹配格式化的条目?我不想遍历所有联系人,因为如果有很多联系人,可能需要很长时间。
以下是contactItems
的定义方式:
Outlook.NameSpace outlookNameSpace
= Globals.ThisAddIn.Application.GetNamespace("MAPI");
Outlook.MAPIFolder contactsFolder
= outlookNameSpace.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderContacts);
Outlook.Items contactItems = contactsFolder.Items;