4

这可能是一个愚蠢的问题,但是当我在 ASP.NET MVC 3 的剃刀视图中编写以下内容时,是在客户端还是服务器上计算的本地时间?

@Html.LabelFor(x=>x.MyDate.ToLocalTime())

我想它是服务器端的,因为视图是在服务器上组装的,然后再将其发送回客户端,但我并不完全有信心。

谢谢

J.P

4

1 回答 1

11

这是服务器端。您的 Razor 视图在服务器上执行,因此所有 DateTime.ToLocalTime() 方法都使用服务器的时区在服务器上进行评估。

如果您需要它在客户端的上下文中进行评估,那么您将需要某种方法来允许客户端提供其时区信息,然后使用TimeZoneInfoandTimeZone类来处理该时区,可能使用TimeZone.ToLocalTime()方法。

于 2012-08-03T16:55:54.107 回答