ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.Data.Knowledge Namespace / KnowledgeGraphSearchFilter Class / SearchText Property
Example

In This Topic
    SearchText Property (KnowledgeGraphSearchFilter)
    In This Topic
    Gets or sets the search query used to filter the returned rows. This text should abide by the Apache Lucene query syntax.
    Syntax
    Public Property SearchText As String
    public string SearchText {get; set;}
    Example
    Submit a Text Search
    {
      await QueuedTask.Run(async () =>
      {
        //and assuming you have established a connection to a knowledge graph
        //...
        //Construct a KG search filter. Search text uses Apache Lucene Query Parser
        //syntax - https://lucene.apache.org/core/2_9_4/queryparsersyntax.html
        var kg_sf = new KnowledgeGraphSearchFilter()
        {
          SearchTarget = KnowledgeGraphNamedTypeCategory.Entity,
          SearchText = "Acme Electric Co.",
          ReturnSearchContext = true,
          MaxRowCount = 10 //Default is 100 if not specified
        };
    
        //submit the search - returns a KnowledgeGraphCursor
        var e = 0;
        using (var kg_rc = kg.SubmitSearch(kg_sf))
        {
          //wait for rows to be returned from the server
          //note the "await"...
          while (await kg_rc.WaitForRowsAsync())
          {
            //Rows have been retrieved - process this "batch"...
            while (kg_rc.MoveNext())
            {
              //Get the current KnowledgeGraphRow
              using (var graph_row = kg_rc.Current)
              {
                //We are returning entities from this search
                var entity = graph_row[0] as KnowledgeGraphEntityValue;
                var entity_type = entity.GetTypeName();
                var record = new List<string>();
                //discover keys(aka "fields") dynamically via GetKeys
                foreach (var prop_name in entity.GetKeys())
                {
                  var obj_val = entity[prop_name] ?? "null";
                  record.Add(obj_val.ToString());
                }
                System.Diagnostics.Debug.WriteLine(
                  $"{entity_type}[{e++}] " + string.Join(", ", record));
                //or use "Process a KnowledgeGraphRow Value" snippet
                //ProcessKnowledgeGraphRowValue(entity);
              }
            }
          }//WaitForRowsAsync
        }//SubmitSearch
      });
    }
    Requirements

    Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)

    ArcGIS Pro version: 3.2 or higher.
    See Also