SharePoint CSOM KeywordQuery

We can search SharePoint from CSOM using the KeywordQuery function.

KeywordQuery keywordQuery = new KeywordQuery(context);
keywordQuery.SourceId = Guid.Parse(resultSourceId); // If using a Result Source. Otherwise, remove this.
keywordQuery.QueryText = $"Site: \"{siteColectionUrl}\"";
keywordQuery.SelectProperties.Add("DlcDocId");
keywordQuery.SelectProperties.Add("ParentLink");
keywordQuery.SelectProperties.Add("IdentityListId");
keywordQuery.SelectProperties.Add("SPWebUrl");
keywordQuery.SelectProperties.Add("OCRVersion");
keywordQuery.SelectProperties.Add("IsOCRVersionDiff");
keywordQuery.SelectProperties.Add("FileRef");
keywordQuery.SelectProperties.Add("DocIDLanguageNeutral");
keywordQuery.TrimDuplicates = true;
keywordQuery.EnableQueryRules = false;
keywordQuery.RowLimit = 200;
keywordQuery.SortList.Add("IsOCRVersionDiff", SortDirection.Descending);
 
SearchExecutor searchExecutor = new SearchExecutor(context);

ClientResult<ResultTableCollection> results =  searchExecutor.ExecuteQuery(keywordQuery);

context.ExecuteQueryWithExponentialRetry();

Date
December 21, 2023
Tags
Architect
Kudos
Buy me a Coffee
Support this site.