Microsoft Graph CSharp SDK和过滤 - 如何构建在两个不同日期过滤的请求?

时间:2017-02-16 17:34:56

标签: c# onedrive microsoft-graph

我正在对Microsoft Graph CSharp SDK进行编码,我正在努力证明在两个不同日期之间过滤IDriveSearchCollectionPage对象的能力。

我的请求如下:

await graphServiceClient.Drives["test@test.onmicrosoft.com"].Search(searchQuery).Request().Filter(...).GetAsync();

我注意到有一个.Filter()方法存在于IDriveSearchRequest上,但它只接受一个string类型的参数。我看了一下Microsoft Docs,Filtering Docs

在阅读完文档后,我仍然无法构建.Filter()来接收日期并将其与DateTime.Now对象进行比较。

这是我目前的要求:

await graphServiceClient.Drives["test@test.onmicrosoft.com"] .Search(searchQuery) .Request() .Filter($"02-15-2017 lt {DateTime.Now.ToString("MM-dd-yyyy")}") .GetAsync();

当我执行此请求时,出现Bad Request错误。任何人都可以给我一只手。Filter()我只想比较两个日期吗?

1 个答案:

答案 0 :(得分:0)

最简单的调试方法是捕获请求和响应,通过删除PII和访问令牌对其进行清理,然后在此处共享。没有看到,我正在猜测。

我看到的问题:

  1. 我不确定您是否可以执行搜索和过滤 同样的要求。我猜不了。尝试一次只使用一个。
  2. 如果要使用过滤器,则需要使用属性进行定位。在过滤器中指定要定位的属性,而不是02-15-2017。