Ger*_*art 5 c# epoch azure-cosmosdb
所以我读了一篇关于在Azure DocumentDb中使用datetime的非常有趣的博客.问题是,目前,Azure DocumentDb不支持日期时间字段的范围搜索.原因是DocumentDb基于json并且没有日期时间类型,因此通常将其放在xml日期时间格式的字符串中.
(显然Mongo没有那个问题,它的bson格式添加了datetime类型(等等))
无论如何,文章描述了在纪元(unix)时间内将日期时间存储在json中,基本上将日期时间存储为自01-01-1970以来的秒数.时代的一个问题是它不考虑闰秒,但我现在可以忍受这一点.
我的问题是,我还希望以这种格式存储出生日期.现在我可以将01-01-1900作为开始日期,并将自该日期以来的天数存储在int中.虽然我很确定这会很好用,但感觉epoch是一个完善的概念,但生日的感觉就像我正在构建我自己的约定,这是我通常想要避免的.
有没有建立标准将日期存储标准化为数字?哪个日期应该是基准日期?
Lar*_*one 17
首先,更新:DocumentDB现在支持字符串和数字的范围索引.您必须正确设置索引才能使其正常工作.
现在,给你一个推荐.我成功地将ISO-8601时间戳存储为字符串.这是DocumentDB SDK用于处理DateTime的默认格式,因此它比转换为整数的工作少.
ISO-8601日期/时间字符串具有多个符合您需求的属性.
我在这里写过这个方法.