是不是有一种(简单)方法告诉Linq To SQL类特定的DateTime属性应该被视为UTC(即默认情况下将DateTime类型的Kind属性设置为Utc),或者是否存在"干净"的解决方法?
我的app-server上的时区与SQL 2005 Server不同(不能更改任何),没有一个是UTC.当我将类型为DateTime的属性保留为dB时,我使用UTC值(因此db列中的值为UTC),但是当我读回值时(使用Linq To SQL),我得到DateTime的.Kind属性值为'未指定'.
问题是,当我将它'转换为UTC时,它是4小时关闭.这也意味着当它被序列化时,它最终在客户端以4小时的错误偏移(因为它使用UTC序列化).
问题是我希望它忽略日期,只考虑时间因素.这是我有的:
import time
from time import mktime
from datetime import datetime
def getTimeCat(Datetime):
# extract time categories
str_time = datetime.strptime(Datetime, "%m/%j/%y %H:%M")
ts = datetime.fromtimestamp(mktime(str_time))
# --> Morning = 0400-1000
mornStart = datetime.time(4, 0, 1)
mornEnd = datetime.time(10, 0, 0)
# --> Midday = 1000-1600
midStart = datetime.time(10, 0, 1)
midEnd = datetime.time(16, 0, 0)
# --> Evening = 1600-2200
eveStart = datetime.time(16, 0, 1)
eveEnd = datetime.time(22, 0, 0)
# --> Late Night = 2200-0400
lateStart = datetime.time(22, 0, …Run Code Online (Sandbox Code Playgroud) 凌晨6点,我刚开始正确思考如何推出一款需要在当天开始时向用户提供服务的网络应用程序.也是在他们的日子结束时.
无处不在我一直在阅读有关人们说很多只是用来.ToUniversalTime以UTC时间存储时间,但是当我尝试这个时(我怀疑)它没有用,它只是将时间缩短了一个小时(我在英国,所以我认为这与从GMT到UTC的一些偏差有关,虽然这对我来说没有意义,因为白天节能应该暂时关闭).
我在db中有一个存储用户时区的字段,所以当我开始使用ConvertTimeToUtc和fromUtc时,它开始做我期望它做的事情.虽然我不确定我是否必须自己构建一些逻辑以进行夏令时转换,或者它应该为我做.
我主要想知道为什么每个人都在谈论.ToUniversalTime,因为它似乎并没有帮助我,我无法理解它怎么可能知道多少来抵消将它转移到UTC的时间,而第二种方式有道理.
有人可以解释每种方法如何有用吗?
我想转换"ISODate(\"2014-11-13T18:43:33.868Z\")"为 c# datetime ex 2014-11-13 18:43:33。"ISODate(\"2014-11-13T18:43:33.868Z\")"取自 MongoDB 集合的值。
请帮忙。
datetime ×4
c# ×2
.net ×1
linq-to-sql ×1
mongodb ×1
python ×1
python-2.6 ×1
sql-server ×1
timezone ×1
utc ×1