我想在某个日期之间读取一位用户的所有约会。并从他们那里获取有关什么,从什么时候到什么时候,它具有哪种颜色(类别)以及不在办公室状态的信息。
我没有找到有效的样本。你能给我看看一个例子吗。

我正在使用MS的Win7和EWS Java API 1.2

最佳答案

在Calendar文件夹上使用带有开始日期和结束日期的CalendarView可以获取设置日期范围内的所有内容。将所需的属性放在PropertySet中,在CalendarView中进行设置,然后使用ExchangeService.findAppointments()来获取它们:

CalendarView view = new CalendarView(startDate, endDate);
PropertySet p = new PropertySet(ItemSchema.Categories, AppointmentSchema.Start,
    AppointmentSchema.End);
view.setPropertySet(p);
FindItemsResults<Appointment> find = service.findAppointments(
    WellKnownFolderName.Calendar, view);


遍历FindItemsResults并获得所需的内容。我不确定是否有必要,但是即使您通过PropertySet进行请求,各种操作也不会总是返回您需要的信息。如果是这种情况,则需要使用Appointment.load(PropertySet)或ExchangeService.loadPropertiesForItems(Items,PropertySet)来获取它们。我不确定您在约会本身上不在办公室的意思。您是指禁酒令的状态吗?国家如省?外出时,您是指用户不在办公室内还是预定约会时用户的状态为“外出”(又名OOF)?

09-30 20:04