Skip To Content ArcGIS for Developers Sign In Dashboard

ArcGIS Runtime SDK for .NET

Feature collection layer (Query)

This code sample is available for these platforms:
View Sample on GitHub

Create a feature collection layer to show a query result from a service feature table. The feature collection is then displayed on a map with a feature collection layer.


How it works

  1. Call featureTable.QueryFeaturesAsync(queryParameters).
  2. Create a FeatureCollectionTable with the resulting features.
  3. Use the feature collection table to create a FeatureCollection.
  4. Create a FeatureCollectionLayer referring to the feature collection.
  5. Display the layer.

Relevant API

  • FeatureCollection
  • FeatureCollectionLayer
  • FeatureCollectionTable
  • FeatureQueryResult
  • QueryParameters
  • ServiceFeatureTable


Search and Query, feature collection layer

Sample Code

<UserControl x:Class="ArcGISRuntime.UWP.Samples.FeatureCollectionLayerFromQuery.FeatureCollectionLayerFromQuery"
        <esriUI:MapView x:Name="MyMapView"/>
// Copyright 2016 Esri.
// Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
// You may obtain a copy of the License at:
// Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an 
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific 
// language governing permissions and limitations under the License.

using Esri.ArcGISRuntime.Data;
using Esri.ArcGISRuntime.Mapping;
using System;
using Windows.UI.Popups;

namespace ArcGISRuntime.UWP.Samples.FeatureCollectionLayerFromQuery
        "Feature collection layer from query result",
        "This sample demonstrates how to create a feature collection layer to show a query result from a service feature table.",
    public partial class FeatureCollectionLayerFromQuery
        private const string FeatureLayerUrl = "";

        public FeatureCollectionLayerFromQuery()

            // Create the UI, setup the control references and execute initialization 

        private void Initialize()
            // Create a new map with the oceans basemap and add it to the map view
            Map map = new Map(Basemap.CreateOceans());
            MyMapView.Map = map;

            // Call a function that will create a new feature collection layer from a service query

        private async void GetFeaturesFromQuery()
                // Create a service feature table to get features from
                ServiceFeatureTable featTable = new ServiceFeatureTable(new Uri(FeatureLayerUrl));

                // Create a query to get all features in the table
                QueryParameters queryParams = new QueryParameters
                    WhereClause = "1=1"

                // Query the table to get all features
                FeatureQueryResult featureResult = await featTable.QueryFeaturesAsync(queryParams);

                // Create a new feature collection table from the result features
                FeatureCollectionTable collectTable = new FeatureCollectionTable(featureResult);

                // Create a feature collection and add the table
                FeatureCollection featCollection = new FeatureCollection();

                // Create a layer to display the feature collection, add it to the map's operational layers
                FeatureCollectionLayer featCollectionTable = new FeatureCollectionLayer(featCollection);
            catch (Exception e)
                await new MessageDialog(e.ToString(), "Error").ShowAsync();