我在GCP上部署了一个.netcore服务,它可以将实体保存在GCP Datastore数据库中。实体有一个Datetime属性,但日期没有被正确保存。在GCP Datastore中,我将实体中所有的日期属性都设置为UTC日期,但当保存实体时,日期属性似乎增加了时区偏移。例如,我保存了一个实体,其属性为 "createdAt"。"2020-06-10 10:36:00.000z",当我浏览到Datastore GCP控制台时,可以看到它被保存为 "2020-06-10 (14:36:30.000) CEST"。
有什么办法吗?
EDIT
为了澄清我的例子,我的本地时间是 "2020-06-10 (12:36:30.000) CEST"。按照Datastore.V1 net客户端的要求,我把时间转换为UTC,所以是 "2020-06-10 10:36:00.000z",但它被存储为 "2020-06-10 (14:36:30.000) CEST"。
这个日期来自于从GMail API读取的邮件,是邮件的接收日期。
该服务运行在法兰克福(europe-west-3)的App Engine应用程序中。有趣的是,如果我在我的labtop本地运行服务,日期保存得很好吗!?
GCP控制台正在将你的UTC日期转换为你的本地日期,例如,试着将你的日期转换为本地日期。创建一个新的测试实体
添加一个类型为 "日期和时间 "的属性,选择一个以GTMUTC为时区的日期和时间。
添加另一个属性,此时第一个属性的卡片将被折叠,应该显示前一个属性的本地时间值