关于outlook addin中的重复模式的ToUniversalTime()?

时间:2009-02-06 04:37:54

标签: c# outlook

我正在尝试获取appointmentItem RecurrencePattern对象的UTC时间:

Outlook.RecurrencePattern r = appt.GetRecurrencePattern();
String utcDate = r.StartTime.ToUniversalTime().ToString("yyyy-MM-dd");
MessageBox.Show(utcDate);

而不是我期待的日期(2009-02-05),而不是1899-12-30。我注意到Microsoft帮助页面(http://msdn.microsoft.com/en-us/library/ms526846(EXCHG.10).aspx)表示StartTime在本地日期时间内部保存 - 这是否意味着我无法使用此DateTime对象转换为UTC时间?我是否需要访问第一个约会项目并从中找出定期约会系列的开始时间?

---编辑---

实际上,看起来r.StartTime本身在1899年返回一个日期。重复模式上的所有其他参数似乎工作正常(enddate除外,它还返回1899日期) - 不应该StartTime默认为与原始appt项目同时?

1 个答案:

答案 0 :(得分:0)

仍然不确定为什么我无法获得StartTime对象的UTC时间,但事实证明可以使用AppointmentItem对象的StartUTC属性生成重复发生模式。如果使用“打开系列”选项打开定期项目,则活动的AppointmentItem是该系列中的第一个约会(即使到达那里,用户点击该系列中的后续约会项目)。