在服务器端获取日期和时间的最佳方法是什么?

时间:2016-08-10 01:01:48

标签: asp.net date asp.net-mvc-3

我正在开发一个asp.net mvc3项目。我在遇到这个问题时遇到了麻烦。我会给出一个场景,以便它能理解得很好。

Scenario:

我有2台电脑(PC1(server) and PC2(client))。例如,两个PC都有不同的日期和时间,例如PC1+8GMT Date 8/10/2016PC2 +8GMT Date 8/9/2016。我正在使用PC2 client,我正在使用代码在我的控制器中获取时间DateTime.Now();,时间显示在label中我的观点我尝试调整Date and Time标签的PC2以显示时间也会发生变化。我想要的是,即使我更改Date and Time PC2,但它不会影响/更改我的标签中显示的Date and Time,它会依赖于Date and Time in PC1

This scenario is i'm using/testing the publish project

欢迎任何建议。

2 个答案:

答案 0 :(得分:0)

我不确定我是否理解这个问题,但您可能会考虑查看{{1}}方法,该方法将DateTime对象的值转换为UTC。

这样,无论服务器位置如何,您都可以使用标准时间转换到您可能希望用于在应用程序中显示的任何时区。

{{1}}

答案 1 :(得分:0)

我对你的描述不是很清楚。通过调用服务器上的站点(例如https://pc1),似乎您希望标签始终在服务器(PC1)上显示时间,以便在客户端上加载网页。您正在做的事情应该实现:标签中显示的时间将是服务器的系统时间。更改客户端上的时间不会影响它。

如果您希望客户端(PC2)显示其本地时间,则需要使用在客户端上运行的代码,即大多数情况下的JavaScript。 在Javascript中使用日期可能与其他语言/期望略有不同,因此我建议您阅读https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date处的文档。 开始使用var currentDate = new Date();