繁体   English   中英

ASP.NET C#在SQL Server数据库表中搜索

[英]ASP.NET C# Search in a SQL Server Database Table

我正在构建一个门户网站,它不是一个博客引擎,但与一个非常类似。 在SQL Server中,我有一个包含表的数据库,该表是“posts”的基础。 此帖子表包括以下列:

  • ID
  • 作者(S)
  • 标签
  • 标题
  • Markdown发布内容

这是我第一次构建这样的门户网站,我想在这些行上实现某种ASP.NET搜索 ,最好使用除ID之外的所有属性(列)。 此外,从长远来看,我正在考虑是否有可能对这些帖子进行搜索和评论,这些帖子将存储在不同的表格中。

是否有任何开源实现或在线示例代码来完成此搜索 如果没有,我该如何开始? 您是否可以指向一些有关如何使用ASP.NET和C#完成此操作的示例代码的教程? 此外,Google(或其他公司)是否为此创建了任何内容?

我希望我的问题不是太广泛或含糊不清。 提前致谢!

你在使用Sql Server 2008吗? 如果是这样,您可以利用内置的全文搜索功能 然后就像将用户的(已清理的)输入传递给sql查询一样简单。

例如,这是一个查询,它将在Author,Title和PostContent字段中搜索用户输入的文本。

SELECT Author, Title FROM Posts
WHERE CONTAINS((Author, Title, PostContent), @userInput);

SQL Server 2008也支持不同的搜索方法 ,如简单令牌,加权字值,同义词,邻近和前缀搜索......它非常棒。

您是否考虑过使用全文搜索来实现搜索? 这似乎是一个很好的场景。 此链接可能提供有关全文搜索的体系结构和开发的有用信息。 http://msdn.microsoft.com/en-us/library/ms142571.aspx

如果这是公开曝光的,您可以随时将谷歌索引。 谷歌有一个设备 ,你也可以购买它来做到这一点。

如果你不想自己动手,你可以看看:

  1. Sharepoint (常规[自带Win 2003+]或门户服务器)
  2. SOLR (Apache Lucene项目)

如果您想自己推出,我建议您查看SQL Server Analysis Services以定期为您构建搜索索引。

我同意Womp - 全文索引是要走的路。 如果您需要索引的不仅仅是数据库表,还可以查看NLucene

我认为您应该尝试使用Lucene,您可以使用它来索引所有数据并构建一个非常好的搜索引擎。 如果你愿意,我可以提供更多相关信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM