SharePoint 2013 Search Keyword Query Class

原文地址 SharePoint 2013 Search Keyword Query Class本文由SPFarmer翻译

KeywordQuery.和中都有一个类叫 KeywordQueryKeywordQuery

.NET之前的文章里介绍过。新建一个应用程序,然后添加下面的引用。这些文件可以在15 hive里面的ISAPI文件夹里找到:

datatable对象。

using System.Data;using Microsoft.SharePoint;using Microsoft.Office.Server.Search.Query;

一旦我们加好了这些,我们就可以开始了。有很多办法可以构建一个KeywordQuery对象。简单的做法是,使用一个SPSiteSharePoint 2010SPSite对象。

using (SPSite siteCollection = new SPSite(""))

KeywordQuery keywordQuery = new KeywordQuery(siteCollection);

文章,,有很多好的建议在里面。我现在要搜索SharePoint这个关键字。

keywordQuery.QueryText="SharePoint";

ResultTypes,现在我们不再需要这么做了。事实上,这整个过程的代码量减少了。现在我们使用新的SearchExecutor类。

SearchExecutorsearchExecutor =newSearchExecutor();

然后我们把KeywordQuery传递给他的ExecuteQuery方法。

ResultTableCollectionresultTableCollection =searchExecutor.ExecuteQuery(keywordQuery);

var resultTables =resultTableCollection.Filter("TableType",KnownTableTypes.RelevantResults);

var resultTable =resultTables.FirstOrDefault();

以前,我们不得不把数据加载到一个DataTable里,这个过程会增加一些代码量。然后,现在不用了,因为有了新的Table属性。

DataTable dataTable = resultTable.Table;

现在你有了一个DataTable,

下面是整个的代码:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks; using System.Data;using Microsoft.SharePoint;using Microsoft.Office.Server.Search.Query; namespace SearchConsoleApplication1{class Program {static void Main(string[] args){using (SPSite siteCollection = newSPSite("")){KeywordQuery keywordQuery = new KeywordQuery(siteCollection);keywordQuery.QueryText = "SharePoint";SearchExecutor searchExecutor = new SearchExecutor();ResultTableCollection resultTableCollection =searchExecutor.ExecuteQuery(keywordQuery);var resultTables =resultTableCollection.Filter("TableType",KnownTableTypes.RelevantResults);var resultTable =resultTables.FirstOrDefault();DataTable dataTable = resultTable.Table;}} }}因此,如果你有很多基于搜索的代码,那么你需要升级一下。然而,我觉得这是一个简化代码的好机会。

PublishedJan 03 2013, 11:42 AMbyCoreyRoth

Filed under:SharePoint,Enterprise Search,

如果心在远方,只需勇敢前行,梦想自会引路,

SharePoint 2013 Search Keyword Query Class

相关文章:

你感兴趣的文章:

标签云: