MS Outlook联系人按电话号码搜索

时间:2013-12-26 12:48:32

标签: c# office-interop

我使用以下示例代码在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;

0 个答案:

没有答案