EWS交换室查看

时间:2017-06-29 12:51:47

标签: c# exchangewebservices

我需要制作一个应用程序,显示当前的交换会议室和每个房间的时间是空闲还是忙碌。用户可以提供最多5天的日期范围来查看结果。

我已经进行了一次施工,但是它使用起来很慢,因为只需要3秒钟就可以从3个会议室获得所有信息(而将来会有更多的信息在20左右)。

这就是我的工作方式:

  1. 通过AutodiscoverUrl功能进行身份验证: service.AutodiscoverUrl(电子邮件,密码)
  2. 在获得开始日期和结束日期5天之后,我首先获得所有可用的会议室 service.GetRooms(“room@roomlist.com”)
  3. 我遍历找到的会议室并使用 service.GetUserAvailability(room,...)功能来获取calenderevents。
  4. 然后我有一节课,它告诉我一天中的小时数,然后检查房间里发现的calenderevents,看看是否有一个小时忙碌。
  5. 现在,我收集了包含calenderevents的房间,并指出一小时是否忙碌。

    但还有另一种更快的方法吗?如上所述,在5天的日期范围内,仅3个房间需要2/3秒。

1 个答案:

答案 0 :(得分:0)

您是在为每个房间调用GetUserAvailability请求,还是在迭代或将用户一起批处理时?可用性调用可以返回多个用户的信息(100是我记得的硬限制)。可能一次大呼叫比多次呼叫更有效。