我试图在下面的代码中获取与约会相关的重复模式。当我调试代码并在本地窗口中展开 microsoftAppointment.Recurrence 属性时,我可以看到一个名为 [Microsoft.Exchange.WebServices.Data.Recurrence.WeeklyPattern] 的嵌套类,其中包含我需要的信息,但我无法弄清楚如何在我的代码中访问此信息。它显然在内存中,我只是不明白为什么我无法在运行时在代码中读取它。我尝试过 FindAppointments,但只将 Recurrence 返回为 null。
FindItemsResults<Item> findResults = exchangeService.FindItems(WellKnownFolderName.Calendar, new ItemView(folderCount));
exchangeService.LoadPropertiesForItems(findResults.Items, new PropertySet(AppointmentSchema.Subject, AppointmentSchema.Location, AppointmentSchema.Body, AppointmentSchema.Start, AppointmentSchema.End, AppointmentSchema.IsAllDayEvent, AppointmentSchema.Body, AppointmentSchema.IsRecurring, AppointmentSchema.Recurrence));
foreach (var v in findResults.Items)
{
Microsoft.Exchange.WebServices.Data.Appointment microsoftAppointment = v as Microsoft.Exchange.WebServices.Data.Appointment;
if (microsoftAppointment.IsRecurring)
{
...
}
}
最佳答案
以下 Actor 最终为我工作。您可以跳过“间隔模式”步骤,但我在此之后进行了切换以查找类型(每周、每天等),以便我可以正确地转换间隔模式。
Microsoft.Exchange.WebServices.Data.Recurrence.IntervalPattern pattern = (Microsoft.Exchange.WebServices.Data.Recurrence.IntervalPattern)microsoftAppointment.Recurrence;
weeklyPattern = (Microsoft.Exchange.WebServices.Data.Recurrence.WeeklyPattern) pattern;
关于c# - EWS : Accessing an appointments recurrence pattern,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10656136/