Веб-службы Exchange :, почему ItemId не является постоянным? [продолжение]

поскольку некоторые другие обсуждали эту проблему ранее (, например, Веб-службы Exchange :, почему ItemId не является постоянным?), я хочу поговорить о решении, я сделал то, что предложили люди, пометив Guid как расширенное свойство. Для меня это решение довольно приятно (, хотя я не знаю, как заставить его работать с вхождениями ), но только до тех пор, пока приложение работает, после перезапуска приложения расширенные свойства элементов исчезают, так что теперь моя проблема заключается в следующем: « Как проштамповать расширенное свойство на элементе EWS и сделать так, чтобы оно было там постоянно?” Это код обновления элементов календаря (встреч)

public void SetGuidForAppointement(Appointment appointment)
{         
appointment.SetExtendedProperty((ExtendedPropertyDefinition)_appointementIdPropertyDefinition, Guid.NewGuid().ToString());
appointment.Update(ConflictResolutionMode.AlwaysOverwrite, SendInvitationsOrCancellationsMode.SendToNone);
}

И это определение свойств, необходимое выше.

_appointementIdPropertyDefinition = new ExtendedPropertyDefinition(DefaultExtendedPropertySet.Appointment, "AppointmentID", MapiPropertyType.String);
            _propertyDefinitionBases = new PropertyDefinitionBase[] { _appointementIdPropertyDefinition, ItemSchema.ParentFolderId, AppointmentSchema.Start, AppointmentSchema.End, 
AppointmentSchema.LegacyFreeBusyStatus, AppointmentSchema.Organizer };
            PropertySet = new PropertySet(BasePropertySet.FirstClassProperties, _propertyDefinitionBases);

Итак, если кто-то делал это раньше, может ли он/она предоставить мне пример, в котором расширенное свойство сохраняется на элементе, даже если приложение было закрыто. Спасибо

9
задан Community 23 May 2017 в 00:28
поделиться