首页 > 解决方案 > 从特定电子邮件地址获取消息交换 sentdatetime 排序

问题描述

在 Microsoft Graph 中,当我使用 接收电子邮件时https://graph.microsoft.com/v1.0/me/messages,我的电子邮件正常。但是当我想要来自特定用户的电子邮件(通过添加$filter=(from/emailAddress/address) eq 'some.email@domain.com')时,我会收到来自去年的电子邮件。如果我为电子邮件地址的发件人添加过滤器,就像订单交换一样。

为什么订单刚刚交换?

我尝试在查询中添加$filterand $orderby=sentdatetime desc,但它返回此错误:

对于此操作,限制或排序顺序过于复杂。

编辑:

我试过这个:

?$filter=sentdatetime ne null and (from/emailAddress/address) eq 'some.email@domain.com'&$orderby=sentdatetime

但它返回了这个错误:

发生内部服务器错误。操作失败。对象引用未设置为对象的实例。

标签: odatamicrosoft-graph-api

解决方案


我能够使用以下方法解决它:

?filter=sentDateTime gt 1800-01-01T01:01:00.000Z and (from/emailAddress/address) eq 'some.email@domain.com'&$orderby=sentdatetime desc

虽然它仍然没有解释为什么首先交换订单,但如果这就是它显示旧电子邮件的原因。


推荐阅读