У нас есть надстройка Outlook VSTO, которая позволяет подключать внешние ресурсы к совещанию Outlook.Когда встреча отменяется, мы должны показать пользователю подсказку, спрашивающую, хотят ли они также удалить резервирование внешнего ресурса.
Сейчас мы проверяем AppointmentItem.MeetingStatus
против OlMeetingStatus.olMeetingCanceled
, чтобы увидеть, была ли встречаотменен.Но этот статус также устанавливается как отмененный, когда пользователь удаляет участника и отправляет обновление.
Причина, по которой мы выполняем проверку в Application.ItemSend
, а не проверку AppointmentItem.BeforeDelete
, заключается в том, что BeforeDelete срабатывает перед отменой собраниябыл отправлен пользователем - если мы удалили внешнее бронирование в BeforeDelete, а затем пользователь закроет собрание без отправки отмены, мы останемся в состоянии, когда бронирование было удалено, но собрание все еще активно.
Какмы можем определить, вызван ли вызов события ItemSend удаленным участником или отменой собрания?