Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将客户端时间转换为utc时间以保存为sql_C#_Asp.net_Javascript - Fatal编程技术网

C# 将客户端时间转换为utc时间以保存为sql

C# 将客户端时间转换为utc时间以保存为sql,c#,asp.net,javascript,C#,Asp.net,Javascript,如何让位于不同时区的客户机在其web浏览器中选择日期和时间,并将其保存为sql数据库中的utc时间?这个日期是未来的日期,所以无论这个日期是否在夏令时,都可能会发生变化,所以我需要对此进行说明 该网站是一个asp.net c#网站 在HTML中有一个隐藏字段,并通过javascript用当前时间填充。因为它是由用户的浏览器完成的,所以它将在用户的本地时间进行。在服务器端,将其与服务器的本地时间进行比较,以查找时区偏移量。我们最终的做法是将客户端时区的存储添加到其用户配置中。这样我们就可以准确地知

如何让位于不同时区的客户机在其web浏览器中选择日期和时间,并将其保存为sql数据库中的utc时间?这个日期是未来的日期,所以无论这个日期是否在夏令时,都可能会发生变化,所以我需要对此进行说明


该网站是一个asp.net c#网站

在HTML中有一个隐藏字段,并通过javascript用当前时间填充。因为它是由用户的浏览器完成的,所以它将在用户的本地时间进行。在服务器端,将其与服务器的本地时间进行比较,以查找时区偏移量。

我们最终的做法是将客户端时区的存储添加到其用户配置中。这样我们就可以准确地知道它们在哪里,并且您可以使用Framework 3.5的内置转换功能来执行本地和UTC之间的所有转换(这将考虑夏令时)

看这里


我假设您有经过身份验证的用户,但是如果您在数据库中存储用户选择的日期,这是一个公平的选择。

您不能让javascript在客户端上将日期/时间转换为UTC吗?

也许您可以使用DateTime类上的ToUniversalTime方法来进行转换。这将适用于当前时间,但如果他们在将来保存日期,由于夏令时的原因,该日期可能具有不同的偏移量。我不知道如何在utc时间中保存未来日期您使用的是哪个数据库供应商?一些供应商提供了带有时区的
时间戳
数据类型,以解决此类问题。