C# 如何在ToLocalTime()中确定本地

C# 如何在ToLocalTime()中确定本地,c#,asp.net,datetime,C#,Asp.net,Datetime,使用时,如何确定当地时间?本地时间是来自服务器还是客户端?我的假设是运行应用程序的服务器。这是服务器上的本地时间。本地这是执行函数的机器的时区。ToLocalTime(),在这种情况下,在服务器上执行。因此,在服务器上计算时间,并将服务器时间返回给客户端。这是运行代码的计算机的本地时区。在ASP.Net应用程序中,代码在服务器上运行,因此它将返回时区 此函数的行为实际上取决于源值的.Kind属性。从: Utc-此DateTime实例转换为本地时间 本地-不执行任何转换 未指定-假定DateTi

使用时,如何确定当地时间?本地时间是来自服务器还是客户端?我的假设是运行应用程序的服务器。

这是服务器上的本地时间。

本地这是执行函数的机器的时区。

ToLocalTime()
,在这种情况下,在服务器上执行。因此,在服务器上计算时间,并将服务器时间返回给客户端。

这是运行代码的计算机的本地时区。在ASP.Net应用程序中,代码在服务器上运行,因此它将返回时区

此函数的行为实际上取决于源值的
.Kind
属性。从:

  • Utc-此
    DateTime
    实例转换为本地时间
  • 本地-不执行任何转换
  • 未指定-假定
    DateTime
    的此实例为UTC时间,并执行转换,就好像种类为UTC一样
这是不明显的行为。您可以阅读.net
DateTime
类和的其他相关问题

其他几点:

  • 如果您遵循,则会将服务器的时区设置为UTC
  • 如果您试图在用户的时区中显示时间,则必须使用