我使用OutlookServicesClient来获取消息。 我试图只收到某个日期之后收到的邮件,但是我收到错误的地方。
我用来获取邮件和过滤器的代码:
public async Task<IReadOnlyList<IMessage>> GetMails(DateTime? MailsAfterDate)
{
OutlookServicesClient oc = await _OutlookAuthentificationService.GetOutlookClient();
if (oc != null)
{
try
{
var msgList = await oc.Me.Messages
.Expand(m => m.Attachments)
.Where(m => !m.DateTimeReceived.HasValue || !MailsAfterDate.HasValue || m.DateTimeReceived.Value.LocalDateTime.Ticks >= MailsAfterDate.Value.Ticks)
.ExecuteAsync();
return msgList.CurrentPage;
}
catch (Exception)
{
throw;
}
}
return null;
}
错误:无法解析OData请求网址。
感谢您的帮助。
答案 0 :(得分:1)
我发现为什么这不起作用: DateTimeReceived是一个可以为空的日期时间,但是你不能在where子句中使用value属性的hasvalue。
如果没有这个功能,该功能可以正常工作。