使用EWS托管API创建时,取消Outlook中的约会和关联资源

时间:2014-02-18 17:47:45

标签: outlook exchangewebservices outlook-2010

我正在使用EWS托管API在Exchange 2010上创建公告。

Appointment appointment = new Appointment(exchangeService);

appointment.Subject = "Sample meeting";
appointment.Body = "Sample meeting body";
appointment.Start = bookingInfo.from;
appointment.End = bookingInfo.from.AddMinutes(bookingInfo.duration);

appointment.Location = meetingRoom.displayName;
appointment.Resources.Add(<my_room_mail>);

// Send the meeting request to all attendees and save a copy in the Sent Items folder.
appointment.Save(SendInvitationsMode.SendToAllAndSaveCopy);

这段代码在我的Outlook中有效地创建了一个appoitment,但作为资源包含的会议室被标记为“暂定”(不是真正接受的)。所以当我想要删除会议时,会议室保留预订(忙/暂定)的插槽,并且无法删除暂定。

如果我从EWS代码中删除该appoitment(使用appoitment ID),它会按预期工作,房间实际上是免费的。

Appointment appointment = Appointment.Bind(exchangeService, new ItemId(itemId));
appointment.Delete(DeleteMode.MoveToDeletedItems);

你知道这是什么问题吗?展望对吗?不良的任命创建或资源预订?

2 个答案:

答案 0 :(得分:2)

好的,我知道Direct Booking与EWS / OWA / Mobile解决方案(以及没有注册调整的Outlook 2010/2013)不兼容。

直接预订和资源预订助理(自动接受功能)是冲突的技术,如果一起启用,日历处理和项目一致性可能会发生意外行为。

检查以获取更多详细信息:

答案 1 :(得分:0)

资源室需要自动接受邀请,因此它失去了暂定状态。然后,当您从日历中删除约会时,它应自动将取消发送到房间。删除中有一个设置可以执行此操作,如果是默认设置,我会忘记我的头脑,但我认为最初的问题是房间未配置为接受或拒绝发送的邀请。