我正在创建一个控制台应用程序来阅读特定用户电子邮件的电子邮件并处理满足特定条件的电子邮件。这是示例代码:
GraphServiceClient client = GetAuthenticatedClient();
string subject = "RE: ACTION NEEDED:";
string dt = "2018-10-5T00:00:00Z";
IUserMessagesCollectionPage msgs =
client
.Users["UserName@CompanyName.com"]
.Messages.Request()
//.Filter($"receivedDateTime gt {dt}") // invalid filter
.Filter($"startswith(subject, '{subject}') and receivedDateTime gt {dt}")
.Select(m => new { m.Subject, m.ReceivedDateTime, m.From, m.Body })
.Top(100)
.GetAsync().Result;
int msgCnt = msgs.Count;
Console.WriteLine($"Message count: {msgCnt}");
Console.ReadLine();
2个问题:
我希望这个过滤器工作:
.Filter($"startswith(subject, '{subject}') and receivedDateTime gt {dt}")
该startswith
作品本身但与日期过滤器错误。
我自己尝试了日期过滤器,但它不起作用。我得到一个无效的过滤器。我在日期周围添加了单引号,但没有运气。
.Filter($"receivedDateTime gt {dt}") // Get invalid filter
有任何想法吗?