如何使用全文搜索 (FTS) 字段过滤 ADO.NET 数据?
我们正在使用 ADO.NET 数据服务 &正在构建基于 URL 的过滤器。 示例:/Customers?filter=City eq 'London'
我们现在需要过滤全文“标签”字段。 希望:/Customers?filter=类似“友好”的标签
问题: ADO.NET 没有 LIKE 运算符。 ADO.NET 似乎不喜欢 FTS (它没有找到匹配项 - 因为它没有解析 CSV)
有什么想法可以让这个工作吗? 谢谢
We are using ADO.NET dataservices & are building URL based filters.
Example: /Customers?filter=City eq 'London'
We now need to filter on a Full Text 'tags' Field.
WAS HOPING FOR: /Customers?filter=Tag like 'Friendly'
PROBLEM:
ADO.NET does not have a LIKE operator.
ADO.NET does not seem to like FTS
(It is not finding a match - because it is not parsing through the CSV's)
Any ideas how to make this work?
THX
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
ADO.NET 数据服务确实支持“LIKE”类型的运算符。
像这样的查询:
或 LINQ 版本:
做你想要的。他们使用“LIKE”运算符生成 SQL 查询,并将“%”添加到搜索词中。因此,它们的作用就像“LIKE”运算符。
例如,不支持带有“包含”运算符的 FTS,我没有时间确定,但我想我不久前看到过它。
更多信息:
http://www.odata.org/developers/protocols/uri-conventions
ADO.NET Data Services do support "LIKE" kind of operator.
Queries like this:
or LINQ version:
Do probably what you looking for. They generate a SQL query with "LIKE" operator and add "%" to the search term. So, they act like "LIKE" operator.
FTS with "Contains" operator for example .. is not supported, I do not have time to check for sure but I think I saw it not so long ago.
More information:
http://www.odata.org/developers/protocols/uri-conventions
我本身没有使用过 ADO.NET 数据服务,但是,在使用全文搜索时,我发现 CONTAINS 运算符功能更强大。无论是在临时 SQL 字符串中,还是在存储过程中。
I haven't worked with ADO.NET Data Services per se, but, when working with Full Text Search, I have found that the CONTAINS operator is much more powerful. Whether in an ad hoc sql string, or in a stored proc.