ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Core.Data Namespace / SelectionOption Enumeration
Example Example Version

SelectionOption Enumeration
Specifies the content of the selection.
Syntax
Members
MemberDescription
Empty An empty selection is created.
Normal The selection is created containing all rows returned by the query.
OnlyOne The selection is created containing the first row returned by the query.
Example
Selecting Rows from a Table
public async Task SelectingRowsFromATable()
{
    await ArcGIS.Desktop.Framework.Threading.Tasks.QueuedTask.Run(() =>
    {
        using (Geodatabase geodatabase = new Geodatabase(new DatabaseConnectionFile(new Uri("path\\to\\sde\\file\\sdefile.sde"))))
        using (Table enterpriseTable = geodatabase.OpenDataset<Table>("LocalGovernment.GDB.piCIPCost"))
        {
            QueryFilter anotherQueryFilter = new QueryFilter { WhereClause = "FLOOR = 1 AND WING = 'E'" };

            // For Selecting all matching entries.
            using (Selection anotherSelection = enterpriseTable.Select(anotherQueryFilter, SelectionType.ObjectID, SelectionOption.Normal))
            {
            }

            // This can be used to get one record which matches the criteria. No assumptions can be made about which record satisfying the criteria is selected.
            using (Selection onlyOneSelection = enterpriseTable.Select(anotherQueryFilter, SelectionType.ObjectID, SelectionOption.OnlyOne))
            {
            }

            // This can be used to obtain a empty selction which can be used as a container to combine results from different selections.
            using (Selection emptySelection = enterpriseTable.Select(anotherQueryFilter, SelectionType.ObjectID, SelectionOption.Empty))
            {
            }

            // If you want to select all the records in a table.
            using (Selection allRecordSelection = enterpriseTable.Select(null, SelectionType.ObjectID, SelectionOption.Normal))
            {
            }
        }
    });
}
Selecting Features from a FeatureClass
public async Task SelectingFeaturesFromAFeatureClass()
{
    await ArcGIS.Desktop.Framework.Threading.Tasks.QueuedTask.Run(() =>
    {
        using (Geodatabase geodatabase = new Geodatabase(new DatabaseConnectionFile(new Uri("path\\to\\sde\\file\\sdefile.sde"))))
        using (FeatureClass enterpriseFeatureClass = geodatabase.OpenDataset<FeatureClass>("LocalGovernment.GDB.FacilitySite"))
        {
            List<Coordinate2D> newCoordinates = new List<Coordinate2D>
        {
    new Coordinate2D(1021570, 1880583),
    new Coordinate2D(1028730, 1880994),
    new Coordinate2D(1029718, 1875644),
    new Coordinate2D(1021405, 1875397)
        };

            SpatialQueryFilter spatialFilter = new SpatialQueryFilter
            {
                WhereClause = "FCODE = 'Park'",
                FilterGeometry = new PolygonBuilderEx(newCoordinates).ToGeometry(),
                SpatialRelationship = SpatialRelationship.Crosses
            };

            // For Selecting all matching entries.
            using (Selection anotherSelection = enterpriseFeatureClass.Select(spatialFilter, SelectionType.ObjectID, SelectionOption.Normal))
            {
            }

            // This can be used to get one record which matches the criteria. No assumptions can be made about which record satisfying the 
            // criteria is selected.
            using (Selection onlyOneSelection = enterpriseFeatureClass.Select(spatialFilter, SelectionType.ObjectID, SelectionOption.OnlyOne))
            {
            }

            // This can be used to obtain a empty selction which can be used as a container to combine results from different selections.
            using (Selection emptySelection = enterpriseFeatureClass.Select(spatialFilter, SelectionType.ObjectID, SelectionOption.Empty))
            {
            }

            // If you want to select all the records in a table.
            using (Selection allRecordSelection = enterpriseFeatureClass.Select(null, SelectionType.ObjectID, SelectionOption.Normal))
            {
            }
        }
    });
}
Inheritance Hierarchy

System.Object
   System.ValueType
      System.Enum
         ArcGIS.Core.Data.SelectionOption

Requirements

Target Platforms: Windows 11, Windows 10

ArcGIS Pro version: 3 or higher.
See Also