Я пытаюсь вернуть один элемент календаря из Outlook из нашего приложения на C # для Windows. Он продолжает возвращать эту ошибку:
Redemption.RDOItems
Ошибка подтверждения: количество полей == 1.
Я использую подобный код в надстройке Outlook, которую я создал, и она отлично работает. Основным отличием является префикс фильтра.
В надстройке я использую:
string filterprefix = "[" + OurCustomProperty.OurItemId + "] = '";
var filter1 = filterprefix + parentItem.NeedlesId + "'";
var findItem = folder.Items.Find (filter1);
но этот код не работает из нашего настольного приложения.
Вот код из настольного приложения, которое возвращает ошибку:
Назначение. Идентификатор содержит допустимое значение, которое мы устанавливаем при создании элемента.
string Filterprefix = "@SQL =" + "http://schemas.microsoft.com/mapi/string/{00020329-0000-0000-C000-000000000046}/OurCustomProperty.OurItemId/0x0000001f = '";
RDOSession rdoSession = new RDOSession ();
rdoSession.Logon ("", "", false, false, null, false);
Папка RDOFolderRDO = rdoSession.GetDefaultFolder (rdoDefaultFolders.olFolderCalendar);
var filter1 = filterprefix + meeting.Id + "'";
string ls_find = Filterprefix + meeting.Id + "'";
var findItem = folderRDO.Items.Find (ls_find);
Я пробовал несколько вариантов синтаксиса, но не могу понять, что это правильно.
Я также попытался использовать Sort затем Restrict, но и с этим тоже не повезло.
Спасибо, Рик