AnsweredAssumed Answered

Locator Suggestion Issue When Street Predirection Is Present

Question asked by NimbusHex on Jul 18, 2019

.NET Runtime Team,

 

More fun with locators!

 

When feeding a suggestion to a street address locator created in ArcGIS Pro 2.4 (and presumably every version before where the Create Locator tool was first available), using SuggestAsync on a Locator task with a street name that is just a number and contains a predirection (ie. 12944 S 124 W Ave, Tulsa, OK), the 124 part seems to “reset” the suggestions and it uses 124 as the address number instead of the address street name.

 

Using the same locator in both ArcGIS Runtime SDK and ArcGIS Pro:

 

 

 

Just to clarify, this is using v100.5.0 of the ArcGIS Runtime SDK for .NET.  The issue does not seem to manifest in runtime when excluding the predirection (S), but including the predirection is necessary in our workflow.

 

 

Pro and Runtime are using the same locator (TulsaOK_Centerline_Locator6).  Here is the code snippet being used to get the suggestions from the locator.

 

if (BaseMap.LocatorTask != null && BaseMap.LocatorTask.LoadStatus == Esri.ArcGISRuntime.LoadStatus.Loaded && BaseMap.LocatorTask.LocatorInfo.SupportsSuggestions)

            {

                var suggestParams = new SuggestParameters { MaxResults = 10, SearchArea = BaseMap.Maps[0].InitialViewpoint.TargetGeometry };

                var suggestions = await BaseMap.LocatorTask.SuggestAsync(LocationSearchBox.Text, suggestParams);

                ObservableCollection<SuggestResult> sr = new ObservableCollection<SuggestResult>(suggestions);

                LocationResultsListBox.ItemsSource = sr;

            }

 

BaseMap is the MobileMapPackage that the locator was exported with.  The MMPK was created in ArcGIS Pro 2.4.

 

I have noticed that subtle parameter differences in SuggestParameters cause large differences in the outcome.  For instance, if SearchArea = BaseMap.Maps[0].InitialViewpoint.TargetGeometry was removed from the SuggestParameters, the results would be radically different, so I’m wondering if there’s another SuggestParameter property that needs to be set.

Outcomes