This document is archived and information here might be outdated.  Recommended version.

ISpatialFilter.SearchOrder Property (ArcObjects .NET 10.8 SDK)
ArcObjects Help for .NET developers > ArcObjects Help for .NET developers > ArcObjects namespaces > Geodatabase > ESRI.ArcGIS.GeoDatabase > Interfaces > IS > ISpatialFilter Interface > ISpatialFilter.SearchOrder Property
ArcGIS Developer Help

ISpatialFilter.SearchOrder Property

The search order used by the filter.

[Visual Basic .NET]
Public Property SearchOrder As esriSearchOrder
public esriSearchOrder SearchOrder {get; set;}
HRESULT get_SearchOrder(
  esriSearchOrder* order
HRESULT put_SearchOrder(
  esriSearchOrder order
order [out, retval]

order is a parameter of type esriSearchOrder* order [in]
order is a parameter of type esriSearchOrder

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


SearchOrder gets the order in which spatial searches are applied by the RDBMS (ArcSDE). This property only affects ArcSDE Geodatabase data. It has no effect on Personal or File Geodatabase, Coverage or Shapefile data.


SearchOrder gets the order in which spatial searches are applied by the RDBMS (ArcSDE). The spatial component of the search should generally be applied before the attribute component. The more spatially restrictive of the two should be used. In the following query, "Find all wells with particulate counts between 1000 and 1200 in within 5 miles of a school", the esriSearchOrderAttribute enumerator is more effective. If the filter geometry is the outline of the city of Modesto, California and the attribute query is "street_name = 'Main St.'" then esriSearchOrderSpatial should be used, as there are a large number of "Main St." records at a national level.

Please note that esriSearchOrderSpatial is the default option.  The following esriSearchOrder enumeration values are used to set the search order:


Sets the search order to attribute first.


Sets the search order to spatial first.

See Also

ISpatialFilter Interface