我第一次使用SQL Server 2008全文功能。我喜欢CONTAINS和CONTAINSTABLE提供的功能,但我不希望我的用户学习寻找变形,使用短语,邻近等语法。
我的GUI将有一个文本框可供搜索。是否有任何(.net DLL或c#代码)将非常常见的搜索引擎运算符转换为SQL Server 2008的CONTAINS语法?我不必使用CONTAINS的所有功能,只需要布尔运算符,短语,通配符,排除项和可能的变形等内容。
答案 0 :(得分:1)
我发现了这个:
A Google-like Full Text Search
它使用Irony。
有没有人用过这个?
我发现在codeplex页面上的Irony源代码包含了最新版本的这个版本。我会用它做一些测试并发布我的发现。
它不够可靠。 SearchGrammer类的更新版本与Michael Coles创建的旧版本不同。但是,旧版本并不难崩溃。现在看起来实际上在客户端应用程序中使用sql server 2008 FTS并不容易。
答案 1 :(得分:0)
您是否考虑过简单地使用Lucene.net?
这涉及到sql server级别的额外工作,并且不支持某些复杂查询,而不支持FTS,但它只提供用户期望的那种搜索。
这是堆栈溢出中很多人推荐的:
最终,您可以尝试将非“以用户为中心”的模型推送到用户样式模式,或者在添加现有的以用户为中心的搜索功能上花费精力。
我建议如果以下情况属实:
然后,您只需添加lucene.net即可获得更多成功
答案 2 :(得分:0)
对不起罗尼,我正在研究类似谷歌的解决方案,但它似乎只是谷歌和SQL服务器语法之间的“桥梁”。我无法看到抽象创建:在示例中,他们使用“documentSummary”,它是AvdentureWorks MS演示数据库的一个字段。
谢谢!