0

我将我的网站托管在位于美国的服务器上,而用户目前位于印度,并且该网站可能在全球拥有用户。问题是,DateTime.Now 总是考虑服务器的日期时间,因此它显示的日期根据客户端是错误的。该站点是使用 MVC 4 和 .NET Framework 4.0 开发的。这种问题的最佳解决方案可能是什么?

4

2 回答 2

3

最好的解决方案是使用DateTime.UtcNow。然后,您可以在渲染结果时根据您所在的区域或用户的区域添加额外的小时数。

DateTime.Now而且它比now调用 UtcNow 更快,并添加额外的代码以根据计算机/服务器本地设置将其转换为本地时间。

一般来说,UtcNow 是您必须用来记录所有内容的工具,它的独立时间,这意味着在所有计算机上都是相同的。然后,当您呈现结果时,您可以根据用户的本地时间更改它们。

于 2013-09-20T07:10:28.277 回答
0

也许您可以使用 TimeZone.CurrentTimeZone 属性。有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/system.timezone.currenttimezone.aspx 。

于 2013-09-20T07:11:20.230 回答