Sharepoint Keywordquery search returns less results than default sharepoint search

964 views Asked by At

I have a requirement in which I want to get the search results programmatically. For this I am using KeyWordQuery to search programmatically. But here I am getting less results that default SharePoint search, it is omitting some records from the results.

Here is the code I am using

        SPSite site = SPContext.Current.Site;
        KeywordQuery objkeywordquery = new KeywordQuery(site);
        objkeywordquery.QueryText = strQuery;
        objkeywordquery.SelectProperties.Add("Title");
        objkeywordquery.SelectProperties.Add("Path");

        objkeywordquery.ResultsProvider = SearchProvider.Default;
        objkeywordquery.ResultTypes = ResultType.RelevantResults;
        objkeywordquery.RowLimit = 5000
        ResultTableCollection queryResults = objkeywordquery.Execute();
        ResultTable queryResultsTable = queryResults[ResultType.RelevantResults];

        DataTable queryDataTable = new DataTable();

        queryDataTable.Load(queryResultsTable, LoadOption.OverwriteChanges);

If I get 100 results in sharepoint search reults page, with the same querytext I get 96-97 results. Can someone help me with this

1

There are 1 answers

0
Vincent On

Have you tried "objkeywordquery.EnableStemming = true;" ?

Look like the default SharePoint search has it enabled; we had a similar issue and this resolved it.

Hope it helps.

Vincent