将使用哪个时区;SharePoint站点区域设置时区或Azure web app时区

将使用哪个时区;SharePoint站点区域设置时区或Azure web app时区,sharepoint,timezone,azure-web-app-service,Sharepoint,Timezone,Azure Web App Service,我已经为我们的SharePoint在线网站开发了一个远程事件接收器,远程事件接收器托管在azure web app中。现在,在远程事件接收器中,我获得了DateTime字段的值,如下所示:- DateTime approveDate = (DateTime)projectItem["ApproveDate"]; 因此我不确定将使用哪个时区来呈现DateTiem;SharePoint区域设置的时区为:- 或azure web应用程序位置的时区:- 现在,如果在我的远程事件

我已经为我们的SharePoint在线网站开发了一个远程事件接收器,远程事件接收器托管在azure web app中。现在,在远程事件接收器中,我获得了DateTime字段的值,如下所示:-

DateTime approveDate = (DateTime)projectItem["ApproveDate"];
因此我不确定将使用哪个时区来呈现DateTiem;SharePoint区域设置的时区为:-

或azure web应用程序位置的时区:-

现在,如果在我的远程事件接收器代码中,我写了这个代码
System.TimeZone.CurrentTimeZone.StandardName
,我将得到
协调世界时

一些东西:

  • 不要使用
    系统时区类。它已被替换为
    System.TimeZoneInfo
    。当前时区为
    System.TimeZoneInfo.Local

  • Azure web应用程序的位置是指托管它的Azure区域。它与时区没有任何关系

  • Azure中的默认时区是UTC(协调世界时)。在大多数情况下,您不应该更改它。相反,您应该使用
    TimeZoneInfo
    类上的方法在应用程序代码中处理时区转换

  • 如果必须更改服务器的时区,Azure应用程序服务允许在
    网站\u时区
    字段中设置配置值。如果您绝对不能修改代码,那么这只能作为最后的手段

  • 在您显示的代码中,时区没有相关性。您只需将
    DateTime
    值从一个位置复制到另一个位置。这实际上取决于您如何将值输入到您的
    项目项
    字典中。它还取决于发送给代码的值。您应该进行一些调试,以查看实际得到的结果。确保检查
    种类
    属性以及日期和时间

  • 在您显示的SharePoint屏幕截图中,我相信时区仅在SharePoint中使用。您必须进行实验,看看它是否会影响发送到代码的值。然而,地区性的语言环境绝对不会影响时区。地区和时区是正交概念


非常感谢您的回复。因此,情况可能如下,因为在我的SharePoint的区域设置中,我使用GMT+4时区,azure使用UTC,然后在我的代码中,
projectItem[“ApproveDate”]
等于
30/09/2020 00:00:00
它将在我的代码中显示为
29/09/2020 20:00:00
?这取决于很多。试试看你能得到什么。如果确实是这样,您可以使用
TimeZoneInfo.ConvertTime
和类似的方法进行转换。您的意思是将日期时间从GMT+4转换为UTC?