ThinkGeo.com    |     Documentation    |     Premium Support

Test existence of a layer

Hello,


How do you determine if a layer exist?  I am trying to do the following, but am getting a Dictionary error:


if(Map1.StaticOverlay.Layers["ShapeLayerEllipse"]as InMemoryFeatureLayer == null)

{

return;

}


System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.

   at System.ThrowHelper.ThrowKeyNotFoundException()

   at System.Collections.Generic.Dictionary`2.get_Item(TKey key)

   at ThinkGeo.MapSuite.Core.GeoCollection`1.get_Item(String key)



Steven,



Here Layers is type of GeoCollection and it maintains a Dictionary where your exception throws.



We recommend you to write your code like this, it will be fine:

if (!Map1.StaticOverlay.Layers.Contains("ShapeLayerEllipse"))
{
    return;
}

Thanks,



Howard



Thanks Howard.  Have a great weekend…

Steven, 
  
 You are welcome; please let me know if you have more queries. 
  
 Thanks, 
  
 Howard