我的博文里已经有多次提到CRM中的时间处理问题了,本篇继续探讨在web api的场景下时间字段如何处理,本篇只涉及查询,针对2016中新增的时间行为"用户当地时间"和"无时区"展开。
首先以我客户中的一条数据为例,出生日期为“2016/3/16”,类型为“用户当地时间”
但当我以“2016-03-16”作为条件通过web api去查询时,却查不到任何数据(其实这个时候你应该依稀知道和时区有关了)
为了佐证我们的猜想,咱们把出生日期字段的行为改成无时区
然后更新字段值为"2016-03-17"
再来执行下上面的查询,数据出来了。
最后来看下时间行为为"用户当地时间的查询",我们新建一个叫当地时间的字段
将字段值设置为2016年5月22日10点
看到下面两张截图的结果就明白了。
最后说几个时间写法上的注意点,第一我在之前的博客中也提到过,月份、日期、时间只要是个位数的数字前必须补齐0,第二web api中的日期格式只认yyyy-MM-dd,其他格式一概报错,第三当同时包含日期和时间时一定要带上Time Zone即我上文中的日期末尾的T时间末尾的Z.