EWS API - 更新会议

时间:2014-10-22 10:09:27

标签: api timezone exchangewebservices managed

我使用EWS托管API将约会与Exchange / Exchange Online同步。这一切都很好。遗憾的是,会议请求在Exchange中创建的约会存在问题。 (IsMeeting = True)如果我设置时区(StartTimeZone,EndTimeZone)并尝试保存,则会出现以下错误:“设置操作对于属性无效”。 可以更改和保存其他属性,如约会的开始和结束。 对于非会议的约会,可以轻松更改和保存时区。

代码如下所示:

Appointment = Appointment.Bind(Service, New ItemId("<ItemID>"))

Appointment.StartTimeZone = TimeZoneInfo.Local 'problem
Appointment.EndTimeZone = TimeZoneInfo.Local 'problem
Appointment.Start = DateTime.Parse("22.10.2014 11:00:00")
Appointment.End = DateTime.Parse("22.10.2014 12:00:00")

Appointment.Update(ConflictResolutionMode.AlwaysOverwrite, SendInvitationsOrCancellationsMode.SendToNone) 'error

有人可以告诉我如何更改会议的时区,或者错误的原因是什么?

1 个答案:

答案 0 :(得分:0)

Exchange管理约会&amp;在内部以类似的方式举行会议。不同之处在于约会没有与会者。 1.在Update中,您需要使用SendToAllAndSaveCopy而不是SendToNone。 2.无需提及,IsMeetin。而是使用meeting.ItemClass =&#34; IPM.Appointment&#34 ;; 3.提及Exchange版本,RequestServerVersionValue.Version = ExchangeVersionType.Exchange2010_SP2;这是默认情况下的要求,它有Exchange 2007。 4.对于2010年的交易所,您需要提及start&amp;结束时区,            TimeZoneDefinitionType tz = new TimeZoneDefinitionType(); tz.Id = TimeZone.CurrentTimeZone.StandardName; meeting.StartTimeZone = tz; meeting.EndTimeZone = tz; 注意:代码片段来自使用ews代理类的工作代码