使用EWS管理的API 2.0更新一个服务调用中的约会
本文关键字:一个 服务 调用 约会 管理 EWS API 更新 使用 | 更新日期: 2023-09-27 18:23:53
我正在为每个现有约会设置一个自定义扩展属性,如下所示:
var extendedPropertyDefinition = new ExtendedPropertyDefinition(DefaultExtendedPropertySet.PublicStrings, "RateTheMeetingId24", MapiPropertyType.Integer);
var propertySet = new PropertySet(PropertySet.FirstClassProperties) { extendedPropertyDefinition };
appointment.Load(propertySet);
appointment.SetExtendedProperty(extendedPropertyDefinition, meetingId);
然后我更新约会:
appointment.Update(ConflictResolutionMode.AlwaysOverwrite);
它工作得很好,但速度很慢,因为Update()创建了一个调用来交换每个约会。我想在一个电话中更新会议。我可以列出我的预约与设置的自定义属性,然后我想使用这样的东西:
UpdateAppointment(List<Appointment> appointmentsWithExtendedPropertySetted)
{
appointmentsWithExtendedPropertySetted.UpdateAll();
}
我在MSDN中找到了一个关于UpdateItems方法的参考:ExchangeService.UpdateItems方法
但是我不知道如何使用它。
我在msdn论坛上了解了如何解决我的问题:在一个服务呼叫中更新预约
我需要一次为一个约会设置属性,然后将其添加到批处理中,在为所有约会设置属性后,我需要为我的约会批处理使用_service.UpdateItems()方法:
pulic void UpdateAppointments(List<Item> _updateBatch)
{
Service.UpdateItems(upUpdateBatch, Folder.Id, ConflictResolutionMode.AlwaysOverwrite, MessageDisposition.SaveOnly, SendInvitationsOrCancellationsMode.SendToNone);
}