【问题标题】:Timezone related issue with asp.net applicationasp.net 应用程序的时区相关问题
【发布时间】:2016-03-21 11:07:37
【问题描述】:

我有一个现有的 ASP.NET 应用程序。此应用程序内置于 .net framework 2.0

我们在许多地方使用 DateTime.Now 来在​​应用程序中存储当前日期时间。它用于不同的目的,包括日志记录。

当前应用程序托管在美国哪个服务器上。当我从我的机器访问应用程序时,它会返回服务器的当前日期时间。有什么办法,我可以得到我的本地机器。

我研究并发现我需要使用 TimeZone 类来获取本地机器的当前日期时间。但在这种情况下,我需要更改使用 Datetime.Now 的位置并从时区获取时间。

有什么办法,我可以全局设置,当我使用 datetime.now 时,它返回本地机器时间?

请帮忙。

【问题讨论】:

    标签: c# asp.net sql-server vb.net


    【解决方案1】:

    不,你不能。无法全局设置 TimeZone。

    最佳选择:

    • 将 DateTime.Now 转换为 DateTime.UtcNow 并执行相应的操作 计算(如果您必须将服务器移动到另一个区域 美国?)
    • 使用使用 TimeZone 的 DateTime 的 DateTimeOffset。

    无论如何,您必须在应用程序的客户端而不是服务器端处理日期时间到本地时区的转换。

    【讨论】:

    • 是的。我做了同样的事情。我创建了一个通用函数,它根据时区而不是服务器日期返回本地日期。但是现在问题出在我使用过 datetime 的任何地方。现在,我需要更新更新代码并需要使用该常用功能。我正在寻找任何替代方案,这样我就不需要到处更新了。
    猜你喜欢
    • 2014-11-17
    • 2011-06-12
    • 2010-09-19
    • 1970-01-01
    • 1970-01-01
    • 2011-06-23
    • 2015-01-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多