Office 365图形API - 在接收日期大于过滤器

时间:2016-03-01 17:20:20

标签: odata office365api microsoft-graph

我尝试在Office 365 Graph API上执行查询,说出"在{someISODateTimeString}"

之前给我发送所有电子邮件

例如:

Expression selectValue is undefined on line 16, column 42 in 20155#20195#42611.

看起来gt(大于)实际操作大于或等于(ge),因为上面的查询返回一封电子邮件,其中包含我传递给查询的确切receivedDateTime值。

所以我尝试了一种解决方法:

https://graph.microsoft.com/v1.0/me/messages?$filter=receivedDateTime gt 2016-02-26T14:41:08Z

这也未能省略收到日期为2016-02-26T14:41:08Z的电子邮件。

有关如何实现"大于"的任何帮助查询收到的日期将不胜感激。

1 个答案:

答案 0 :(得分:3)

您看到的行为实际上是由于REST API的精确度下降。大多数日期字段(包括receivedDateTime)实际上存储的精度高于秒。目前发生的事情是您的请求被转换为其中的ReceiveDateTime> 14:41:08.0000。出现在14:41:08.01的消息在技术上比这更大,即使精度被削弱使它看起来相等。

您可以使用的解决方法(我们内部也希望在所有" gt"或" LT"场景中使用)是使用" ge&# 34;对于下一个单位,所以在你的例子中:

https://graph.microsoft.com/v1.0/me/messages?$filter=receivedDateTime ge 2016-02-26T14:41:09Z