.net - Outlook 约会时区显示问题

标签 .net outlook calendar office365api

我是英格兰的一名开发人员,目前正在使用英国夏令时。

使用适用于 Office 365 邮件、日历和联系人 API 的 .Net 客户端库通过 Office 365 API 添加约会时,在 Outlook (2016) 中查看时无法取消点击约会上的时区按钮,并且时区列表始终显示 UTC

查看此图片以获取示例

(See this image for an example)

当我将鼠标悬停在 Outlook 日历中的约会上时,会显示 BST 时间(如预期)。

查看此图片以获取示例

(see this image for an example)

但是,当我手动将约会添加到日历时,时区按钮未被选中/单击,我可以自由地选中/取消选中该按钮。此外,当我单击该按钮时,会显示正确的时区(都柏林、爱丁堡、里斯本、伦敦)。

请注意,通过 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 应用。

最佳答案

我认为我们在这里混淆了两个不同的问题。 Outlook 应用程序的此问题与 Office365 API 问题无关。如果您使用 Outlook 应用程序创建事件,如您所说,您可以更改时区,现在发送事件,然后尝试编辑该事件(在 Outlook 中),您将看到无法更改时区。所以它不仅发生在 Office365 API 上。似乎 Outlook 不允许您在设置后更改时区。

关于.net - Outlook 约会时区显示问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43113847/

相关文章:

c# - 如何确定运行我的应用程序所需的最低 .NET Framework 版本

.net - SplitContainer ISupportInitialize 问题 : VS2010 Targeting . NET 3.5

java - HOUR_OF_DAY 的范围是多少?

PHPMailer 将日历事件发送到 outlook 邮件

MySQL 可用性日历

c# - 为什么不允许在 .NET 中就地实现接口(interface)?

.net - Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll的副本之间的差异

java - 如何在 Java 中创建 Outlook 日历 API 兼容日期

excel - 从 Outlook 电子邮件主题中提取部分内容,然后在 Excel 电子表格中找到它

javascript - Outlook 2010 电子邮件到网页,包括图像