我是英格兰的开发人员,目前我在英国夏季。
使用Office 365邮件,日历和联系API的.Net客户端库通过Office 365 API添加约会时,在Outlook(2016)中查看时,约会上的时区按钮无法单击并且时区列表始终显示UTC
请参阅此图片以获取示例
当我将鼠标悬停在Outlook中的日历中的约会时,会显示BST中的时间(正如预期的那样)。
请参阅此图片以获取示例
但是,当我手动向日历添加约会时,不会选中/点击时区按钮,我可以自由选中/取消选中该按钮。此外,当我单击按钮时,将显示正确的时区(都柏林,爱丁堡,里斯本,伦敦)。
请注意,约会显示通过Office 365在线查看时的正确时间 - https://outlook.office.com/owa/
为什么会这样?
更多信息:
在Google上搜索了一段时间后,我确实遇到了https://social.technet.microsoft.com/Forums/office/en-US/44093e33-133d-4de7-9f67-9ec591453bd0/calendar-meeting-time-zone-display-issue?forum=outlook
但我在https://outlook.office.com/owa/
中没有看到该选项在我的代码中,我在Microsoft.Office365.OutlookServices.Event上设置了以下属性:
Private Sub UpdateEvent(ByVal cEvent As [Event], ByVal tCalendar As t_Calendar)
Dim cLocation As New Location()
cLocation.DisplayName = tCalendar.sLocation
Dim cBody As New ItemBody()
cBody.ContentType = BodyType.HTML
cBody.Content = tCalendar.sDescription
cEvent.Subject = tCalendar.sSummary
cEvent.Location = cLocation
cEvent.IsAllDay = False
cEvent.Start = New DateTimeOffset(tCalendar.dtStart)
cEvent.End = New DateTimeOffset(tCalendar.dtEnd)
cEvent.Body = cBody
End Sub
我已按照指南https://github.com/jasonjoh/office365-azure-guides/blob/master/RegisterAnAppInAzure.md在Azure AD中注册Office 365 API应用程序。
答案 0 :(得分:0)
我认为我们在这里混淆了两个不同的问题。 Outlook应用程序的此问题与Office365 API问题无关。如果您使用Outlook应用程序创建事件,正如您所说,您可以更改TimeZone,现在发送事件,然后尝试编辑该事件(在Outlook中),您将看到您无法更改时区。因此,它不仅适用于Office365 API。看起来Outlook一旦设置就不会让你更改TimeZone。