ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.Data Namespace / QueryFilter Class
Members Example

In This Topic
    QueryFilter Class
    In This Topic
    Represents a filter for performing a query against a Table.
    Object Model
    QueryFilter ClassFullTextExpression ClassSpatialReference Class
    Syntax
    Public Class QueryFilter 
    public class QueryFilter 
    Example
    Fulltext search query
    {
      await QueuedTask.Run(() =>
      {
        using (Geodatabase geodatabase = new Geodatabase(new DatabaseConnectionFile(new Uri("path\\to\\sde\\file\\sdefile.sde"))))
        using (Table table = geodatabase.OpenDataset<Table>("WaterPipeInfo"))
        using (TableDefinition tableDefinition = table.GetDefinition())
        {
          bool supportsFullText = geodatabase.GetDatastoreProperties().SupportsFullTextIndex;
          if (!supportsFullText)
          {
            return;
          }
    
          IReadOnlyList<Index> indexes = tableDefinition.GetIndexes();
          IReadOnlyList<Field> fieldsToSearch = indexes.First().GetFields();
    
          FullTextSearchTermExpression searchRepairStatus = new FullTextSearchTermExpression()
          {
            SearchFields = fieldsToSearch[0].Name,
            SearchTerm = "Repaired",
            SearchType = FullTextSearchType.Simple
          };
    
          FullTextSearchTermExpression searchPipeMaterial = new FullTextSearchTermExpression()
          {
            SearchFields = fieldsToSearch[1].Name,
            SearchTerm = "Copper",
            SearchType = FullTextSearchType.Simple
          };
    
          FullTextOrExpression repairedOrCopperEx = new FullTextOrExpression(searchRepairStatus, searchPipeMaterial);
    
          QueryFilter queryfilter = new QueryFilter
          {
            FullTextExpression = repairedOrCopperEx,
            Offset = 1,
            RowCount = 20,
            PostfixClause = "Order By Size"
          };
    
          using (RowCursor rowCursor = table.Search(queryfilter, false))
          {
            // Use row cursor ...
          }
        }
      });
    }
    Querying a feature layer
    {
        QueryFilter qf = new QueryFilter()
        {
            WhereClause = "Class = 'city'"
        };
        int count = 0;
        using (RowCursor rows = selectedLayer.Search(qf)) //execute
        {
            //Looping through to count
            while (rows.MoveNext()) count++;
        }
        System.Diagnostics.Debug.WriteLine(String.Format(
           "Total features that matched the search criteria: {0}", count));
    }
    Inheritance Hierarchy

    System.Object
       ArcGIS.Core.Data.QueryFilter
          ArcGIS.Core.Data.SpatialQueryFilter

    Requirements

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

    ArcGIS Pro version: 3.0 or higher.
    See Also