栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在ASP.NET中使用时区?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在ASP.NET中使用时区?

第一件事是确保数据位于哪个时区。我建议确保将您存储的任何DateTime存储在UTC时间中(使用

DateTime.ToUniversalTime()
来保存它)。

当要为用户存储提醒时,您将需要当前的UTC时间,添加或删除用户的时区差,然后将新时间转换回UTC。这就是您要存储在数据库中的内容。

然后,当您要检查要发送的提醒时,只需根据UTC时间在数据库中查找要立即发送的提醒;本质上是获得所有时间戳都在之前的提醒

DateTime.Now.ToUniversalTime()

更新
一些实现细节:您可以从

TimeZoneInfo.GetSystemTimeZones()
方法中获取时区列表;您可以使用这些时间显示用户的时区列表。如果
Id
从选定的时区存储属性,则可以从中创建一个TimeZoneInfo类实例,并为给定的本地日期/时间值计算UTC时间:

TimeZoneInfo tzi = TimeZoneInfo.FindSystemTimeZoneById("<the time zone id>");// May 7, 08:04:00DateTime userDateTime = new DateTime(2009, 5, 7, 8, 4, 0);DateTime utcDateTime = userDateTime.Subtract(tzi.baseUtcOffset);


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/411896.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号