0

I am trying to build a KQL Query using KeywordQuery. I have some managed properties columns that I want to display in the result table but it's not working for me.

here is the code:

            oKeywordQuery = new KeywordQuery(oSite);
            oKeywordQuery.SelectProperties.Clear();
            oKeywordQuery.QueryText = sQuery;
            oKeywordQuery.KeywordInclusion = KeywordInclusion.AllKeywords;

            oKeywordQuery.StartRow = 0;
            oKeywordQuery.RowLimit = 500;
            oKeywordQuery.EnableNicknames = true;
            oKeywordQuery.EnablePhonetic = true;
            oKeywordQuery.TrimDuplicates = false;


            oKeywordQuery.SelectProperties.Add("IsDocument"); //This one as a test I was able to display but no managed properties
            foreach (string sDisplayField in oDisplayFields)
            {
                oKeywordQuery.SelectProperties.Add(sDisplayField);
            }

                oSearchExecutor = new SearchExecutor();
                oResultTableColl = oSearchExecutor.ExecuteQuery(oKeywordQuery);
                var oResultTable = oResultTableColl.Filter("TableType", KnownTableTypes.RelevantResults);

                oRTable = oResultTable.FirstOrDefault();

I am able to get results but no managed properties columns are shown. What seems to be the problem?

Guid2015
  • 57
  • 11

1 Answers1

0

Eventually I figured out that I had WHITE SPACES in the properties string. For example:

     oKeywordQuery.SelectProperties.Add(" MyPropTitle ");

Should be:

    oKeywordQuery.SelectProperties.Add("MyPropTitle");
Guid2015
  • 57
  • 11