代码之家  ›  专栏  ›  技术社区  ›  Jigyansu Nanda

Microsoft GraphAPI中的过滤器未按预期出错并给出奇怪的结果

  •  0
  • Jigyansu Nanda  · 技术社区  · 1 年前

    下面的查询应用了timeOff条目的筛选器
    sharedTimeOff/startDateTime >= formattedTodayDateTime
    sharedTimeOff/endDateTime <= formattedRequiredEndDateTime

    这可以翻译为 formattedTodayDateTime <= timeOff's start_date and end_date <= formattedRequiredEndDateTime .

    此查询给出了响应中的条目数(非空)。

    // headers and accessTokens approprately formed
    params = Map();
    params.put("$filter","sharedTimeOff/startDateTime ge " + formattedTodayDateTime + " and sharedTimeOff/endDateTime le " + formattedRequiredEndDateTime + "");
    response = invokeurl
    [
        url :graphUrl
        type :GET
        parameters:params
        headers:headers
    ];
    

    在下面的查询中,我正在过滤休假条目,

    formattedTodayDateTime <= timeOff's end_date <= formattedRequiredEndDateTime .

    params = Map();
    params.put("$filter","sharedTimeOff/endDateTime ge " + formattedTodayDateTime + " and sharedTimeOff/endDateTime le " + formattedRequiredEndDateTime + "");
    response = invokeurl
    [
        url :graphUrl
        type :GET
        parameters:params
        headers:headers
    ];
    

    问题: 第二个查询应该给我更多的响应,但它给了我绝对空的响应。

    我期待在我的回复中有更多的条目。但总是得到空洞的回应。
    我已尝试将查询更改为 格式化的Today日期时间<=timeOff的结束日期<=格式化必需结束日期时间 ,这也给了我空洞的回答。

    1 回复  |  直到 1 年前
        1
  •  1
  •   user2250152    1 年前

    它被提到了 the doc 那个 $filter 参数不支持在查询中多次使用同一属性。

    在第二个查询中,您将指定 sharedTimeOff/endDateTime 两次。

    推荐文章