ThinkGeo.com    |     Documentation    |     Premium Support

Detect existence of object without error trap?

I have some code in my VB2010 application:


     Vessel1Shape = TryCast(VesselLayer.InternalFeatures(MMSI).GetShape(), PointShape)


at the moment if the particular point isn't there, I trap the error with Try/Catch and add it with:


     VesselLayer.InternalFeatures.Add(MMSI, New Feature(Vessel1Shape))


 


However, this seems to be pretty slow and of course it's not good programming practice to be going through so many error traps every cycle of my application updating the map.


Is there some test I can do for the existence of the object in the layer without error trapping?


 


Thanks, 


David


 



David, 
  
   When you add an item to the InternalFeatures GeoCollection there is an overload to the ‘Add’ method that allows you to assign a key.  To see if the item exists you can use the InternalFeatures.Contains(string key) to see if the key is in the collection.  In the API we try to use GeoCollections everywhere we can so you can iterate through like a normal collection and also do lookups by key. 
  
 David

Thanks David,


that gives me a much cleaner way of doing things & also saves me 0.5 seconds per cycle for some reason!


Cheers,


Dave



David, 
  
   I am glad that works for you.  Let us know if you have anymore questions. 
  
 David