2016-03-01 51 views
2

我試圖在Office 365圖形API進行查詢,說:「給我{} someISODateTimeString之前的所有電子郵件」Office 365的圖形API - 大於上收稿日期篩選

例如:

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

這似乎是GT(大於)實際經營爲大於或等於(GE),如上面的查詢將返回我這有,我傳遞到查詢的確切receivedDateTime值的電子郵件。

所以,我想一個解決辦法:

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

這也不能忽略電子郵件的2016-02-26T14接收日期:41:08Z。

與如何實現接收的日期「大於」查詢任何幫助,將不勝感激。

回答

2

您所看到的行爲實際上是由於REST API的精度損失。大多數日期字段(包括receivedDateTime)實際上比第二個字段更精確地存儲。目前發生的情況是,您的請求正被轉換爲receivedDateTime> 14:41:08.0000的查詢。在14:41:08.01出現的信息在技術上比這更大,即使精度被削減使其看起來相等。

的變通,您可以使用(和一個我們在內部也看遍所有的「GT」或「LT」場景應用)是使用「GE」的下一個單元,所以在你的榜樣:

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

唉唉是有道理的,感謝您的答案和解決方法! –