Sitefinity - 适当的 OData URL 过滤 array/classifications

Sitefinity - Proper OData URL filtering array/classifications

我正在使用符合 OData 标准的内置 Web Service API in Sitefinity 9.1。

我有一个像这样的 URL 来接收我想要的格式的 JSON:

/api/stories/storyitems?$select=Title,Summary,ageranges,UrlName,topics,ButtonText

我有一个来自该服务的 JSON,如下所示:

"value": [
    {
    "Title": "Developing Reading Skills",
    "Summary": "Lorem ipsum dolor sit amet",
    "ageranges": [
        "3ca54b5b-06ab-63fa-8375-ff00000b3273"
    ],
    "topics": [
        "f0a84b5b-06ab-63fa-8375-ff00000b3273",
        "efa84b5b-06ab-63fa-8375-ff00000b3273"
    ],
    "ButtonText": "Learn More",
    "UrlName": "developing-reading-skills"
    }
    ....
]

效果很好,但我在按范围或主题过滤此服务时遇到问题。

我尝试了几种不同的解决方案。这似乎是标准的 OData 过滤方式,但这会引发错误。我不确定这是我的格式问题还是 Sitefinity 实现的问题。有人可以确认吗?

/api/stories/storyitems?$filter=any(ageranges eq '3ca54b5b-06ab-63fa-8375-ff00000b3273')&$select=Title,Summary,ageranges,UrlName,topics,ButtonText

这是我在 JSON 中返回的错误:

{
    "error": {
        "code": "",
        "message": "An error has occurred."
    }
}

谢谢!

尝试:

?$filter=ageranges/any(a: a eq 'xxxx')

我被引导至 this article,表明这是正确的方法:

/api/stories/storyitems?$filter=Category/any(s:s eq d81e4d00-afe6-60df-84cd-ff0000aaa3eb)&$select=Title,Summary,ageranges,UrlName,topics,ButtonText