private MapPointLayer CreateSearchResultLayer(SearchResultItem item, IMapGroup root) { Debug.WriteLine("Starting method CreateSearchResultLayer"); var myLayer = new MapPointLayer(item.FeatureSet); // Get Title of web-server var webService = _searchSettings.WebServicesSettings.WebServices.FirstOrDefault( ws => ws.ServiceCode == item.ServiceCode); var defaulLegendText = webService != null? webService.Title : item.ServiceCode; // Build legend text var legendText = defaulLegendText; int nameIndex = 1; Debug.WriteLine("Starting while loop."); while (true) { // Check if legend text is already used var nameUsed = root.Layers.Any(layer => layer.LegendText == legendText); if (!nameUsed) { Debug.WriteLine("Exiting while loop"); break; } // Create new legend text nameIndex++; legendText = string.Format("{0} ({1})", defaulLegendText, nameIndex); } myLayer.LegendText = legendText; Debug.WriteLine("Returning myLayer"); return(myLayer); }
public static SearchResult ToFeatureSetsByDataSource(IEnumerable <SeriesDataCart> seriesList) { if (seriesList == null) { throw new ArgumentNullException("seriesList"); } var resultCollection = new List <SearchResultItem>(); foreach (var dataCart in seriesList) { IFeatureSet featureSet; var searchItem = resultCollection.FirstOrDefault(item => item.ServiceCode == dataCart.ServCode); if (searchItem == null) { featureSet = CreateEmptyFeatureSet(); searchItem = new SearchResultItem(dataCart.ServCode, featureSet); resultCollection.Add(searchItem); } featureSet = searchItem.FeatureSet; AddToFeatureSet(dataCart, featureSet); } return(new SearchResult(resultCollection)); }
private MapPointLayer CreateSearchResultLayer(SearchResultItem item, IMapGroup root) { Debug.WriteLine("Starting method CreateSearchResultLayer"); var myLayer = new MapPointLayer(item.FeatureSet); // Get Title of web-server var webService = _searchSettings.WebServicesSettings.WebServices.FirstOrDefault( ws => ws.ServiceCode == item.ServiceCode); var defaulLegendText = webService != null? webService.Title : item.ServiceCode; // Build legend text var legendText = defaulLegendText; int nameIndex = 1; Debug.WriteLine("Starting while loop."); while(true) { // Check if legend text is already used var nameUsed = root.Layers.Any(layer => layer.LegendText == legendText); if (!nameUsed) { Debug.WriteLine("Exiting while loop"); break; } // Create new legend text nameIndex++; legendText = string.Format("{0} ({1})", defaulLegendText, nameIndex); } myLayer.LegendText = legendText; Debug.WriteLine("Returning myLayer"); return myLayer; }
public static SearchResult ToFeatureSetsByDataSource(IEnumerable<SeriesDataCart> seriesList) { if (seriesList == null) throw new ArgumentNullException("seriesList"); var resultCollection = new List<SearchResultItem>(); foreach(var dataCart in seriesList) { IFeatureSet featureSet; var searchItem = resultCollection.FirstOrDefault(item => item.ServiceCode == dataCart.ServCode); if (searchItem == null) { featureSet = CreateEmptyFeatureSet(); searchItem = new SearchResultItem(dataCart.ServCode, featureSet); resultCollection.Add(searchItem); } featureSet = searchItem.FeatureSet; AddToFeatureSet(dataCart, featureSet); } return new SearchResult(resultCollection); }