azure-cognitive-search - DotNet Core Azure 搜索 SDK - 筛选结果
问题描述
我们正在尝试在 Azure(认知)搜索中实现筛选功能。我希望找到一些不错的 SDK 方法来隐藏所有丑陋的部分,但到目前为止,我发现的唯一示例如下所示(来源):
SearchParameters parameters = new SearchParameters()
{
Filter = String.Format("groupIds/any(p:search.in(p, '{0}'))", string.Join(",", groups.Select(g => g.ToString()))),
Select = new[] { "application essays" }
};
我想知道,我是否缺少一些文档。或者它可能在路线图上?
解决方案
查看我们上个月发布的新Azure.Search.Documents SDK。它确实具有 OData 过滤器帮助,您可以在此处找到:
int stars = 4;
SearchOptions options = new SearchOptions
{
// Filter to only Rating greater than or equal our preference
Filter = SearchFilter.Create($"Rating ge {stars}"),
Size = 5, // Take only 5 results
OrderBy = { "Rating desc" } // Sort by Rating from high to low
};
它会正确转义字符串参数。OData$filter
语法仍然需要原始输入,但格式化字符串中的类型帮助器应该让您的情况更容易:您不必担心自己转义值。
推荐阅读
- mysql - 完成 MS Access 表导出到 SQL 的不同方法
- reactjs - 基于客户端 Socket.IO 响应的 React/Redux 全局状态管理?
- node.js - Razorpay Web API 验证步骤
- python - ffmpeg 不和谐机器人 python
- docker - 如何连接到 Bitbucket 管道中的 docker 守护进程
- xml - 连接 WebParts Sharepoint 2016
- python - 基于常数参数的报告生成。面向对象设计
- csv - CSV - 删除包含错误结构数字的行
- tensorflow - 如何在 Tensorflow 数据管道中正确矢量化地图函数
- oauth-2.0 - 将 Okta 配置为 AWS Cognito 的 OIDC IdP