背景:
用Microsoft.Office.Interop.Outlook取得日歷項,然后根據業務要求篩選。
現象:
如果是定期會議,使用AppointmentItem.Start/End取得的是該定期會議初始會議的時間。
比如:此會議重復了4次,從第二次會議開始,取得的Start,仍然是初次的2020/06/20 13:00:00
①新建定期會議
②將第二次會議時間變更(改晚了一小時)
③ 使用RecurrencePattern.GetOccurrence(DateTime)方法,判斷某一天的日期+定期會議的時刻,在定期會議(模式/列表/一覽)中是否存在。
因為時間變更了(改晚了一小時),所以自然變得不存在於定期會議中了。
分析:
1,不管初回之后的會議時間是否有變更,都不影響AppointmentItem.Start/End的取值,也就是【總是取得定期會議的初回時間】。
2,使用RecurrencePattern.GetOccurrence(DateTime)方法的話,如果定期會議的其中某一次時間有變更,那么變更后時間跟初回對不上,就取得不到了。
結論:
目前還沒有找到好方法取得定期會議,各位網友、大神請指教!!!