Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.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
使用ASP.NET3.5/SQLServer2005在网站上使用时区_Asp.net_Sql Server_.net 3.5_Timezone_Utc - Fatal编程技术网

使用ASP.NET3.5/SQLServer2005在网站上使用时区

使用ASP.NET3.5/SQLServer2005在网站上使用时区,asp.net,sql-server,.net-3.5,timezone,utc,Asp.net,Sql Server,.net 3.5,Timezone,Utc,我试图确定,我应该如何在web应用程序中实现本地时间。所有用户都已登录,没有匿名用户。他们需要在本地时间中查看所有时间值 应该这样做吗 所有日期时间值都保存为数据库中的UTC时间 每个用户的配置文件中都存储有UTC偏移值 显示日期时间值时,我从数据库中获取该值,并应用用户偏移量 这是路吗?还是我遗漏了什么?不要为用户存储UTC偏移量-这还不足以了解完整的时区信息。你应该储存他们的信息,例如“欧洲/伦敦”。然后,考虑到历史变化、夏令时等,您可以在本地时间中显示任何UTC时间 编辑:看起来TimeZ

我试图确定,我应该如何在web应用程序中实现本地时间。所有用户都已登录,没有匿名用户。他们需要在本地时间中查看所有时间值

应该这样做吗

  • 所有日期时间值都保存为数据库中的UTC时间
  • 每个用户的配置文件中都存储有UTC偏移值
  • 显示日期时间值时,我从数据库中获取该值,并应用用户偏移量

  • 这是路吗?还是我遗漏了什么?

    不要为用户存储UTC偏移量-这还不足以了解完整的时区信息。你应该储存他们的信息,例如“欧洲/伦敦”。然后,考虑到历史变化、夏令时等,您可以在本地时间中显示任何UTC时间

    编辑:看起来
    TimeZoneInfo
    ID实际上不是正常的Olson格式-但只要有一些合理的东西可以显示给用户(作为一种选择),并且有一个ID可以稍后从中检索区域,这可能没问题。。。但是,如果以后需要与其他系统进行互操作,则可能会遇到困难

    你应该向用户询问他们的时区(可能先通过JavaScript猜出来)——他们会比你有更多的信息

    你应该对这个类进行更多的调查——我不能说我自己也经常使用它,但这是从.NET3.5开始的。特别是,这将是重要的


    时区通常是一种痛苦,但至少
    TimeZoneInfo
    比旧的
    时区类型提供了更多的支持。

    不要为用户存储UTC偏移量-这还不足以了解完整的时区信息。你应该储存他们的信息,例如“欧洲/伦敦”。然后,考虑到历史变化、夏令时等,您可以在本地时间中显示任何UTC时间

    编辑:看起来
    TimeZoneInfo
    ID实际上不是正常的Olson格式-但只要有一些合理的东西可以显示给用户(作为一种选择),并且有一个ID可以稍后从中检索区域,这可能没问题。。。但是,如果以后需要与其他系统进行互操作,则可能会遇到困难

    你应该向用户询问他们的时区(可能先通过JavaScript猜出来)——他们会比你有更多的信息

    你应该对这个类进行更多的调查——我不能说我自己也经常使用它,但这是从.NET3.5开始的。特别是,这将是重要的


    时区通常是一种痛苦,但至少
    TimeZoneInfo
    比旧的
    TimeZone
    类型提供了更多的支持。

    这对我来说是最简单的方法。我能看到的唯一的失误是一些地区(比如印第安纳州的部分地区和亚利桑那州的所有地区)不配合夏令时,所以你必须采取额外的预防措施,为他们显示正确的时间。

    对我来说,这听起来是最简单的方法。我能看到的唯一的失误是一些地区(如印第安纳州的部分地区和我认为亚利桑那州的所有地区)不配合夏令时,所以你必须采取额外的预防措施,为他们显示正确的时间。

    世界应该有一种语言、一种时间、一种测量东西的系统等等。。。唉!;)太棒了,乔恩。这个世界应该有一种语言,一个时间,一个测量东西的系统等等。。。唉!;)好帖子,乔恩。