Outlookでカスタムプロパティの取得連絡先をフィルタリングしようとしました。ユーザープロパティーコール "SyncValue"を保存しました。それは文字列値を持っています。そして、私はこれらの値をチェックして、contactitemにプロパティ値を持たせようとします。Outlook MAPIを使用したカスタムフィールドのフィルタリング
Outlook.ContactItem contactItem = null;
string syncVal = (char)34 + "http://schemas.microsoft.com/mapi/string/{00020329-0000-0000-C000-000000000046}/SyncValue" + (char)34;
Outlook.MAPIFolder contacts = Globals.objNS.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderContacts);
Outlook.Items contactItems = contacts.Items;
string filter = "WHERE (" + syncVal + " = 'True')";
contactItem = contactItems.Find(filter) as Outlook.ContactItem;
問題は何ですか?プロパティのデータ型は?デフォルトでOOMは文字列を仮定しており、ブール値を持つ可能性が最も高いです。 –
プロパティを文字列値 "True"または "False"として保存しました。問題はContactItemsを取得するときにエラーが発生する - 「条件が無効です」 –