ThinkGeo.com    |     Documentation    |     Premium Support

Problem with QueryTools.GetFeaturesByColumnValue

Thinkgeo version 4.5.88


I have  QueryTools.GetFeaturesByColumnValue in a for loop and on the second iteration and up, it is having problem finding an existing feature. I then put a breakpoint, go to the visual studio, execute the same code in immediate window, it returns the feature.


Help please, thanks



Hi John, 
  
 If when add breakpoint for debug, the API get the target feature, I think the most possible should be your code for shows the target in map have some problem. 
  
 Some more code or your test data should be helpful. 
  
 Regards, 
  
 Don

FeatureLayer zipcodeLayer = Helpers.GetFeatureLayer(LayerUtility.StaticType.ZipCodes); 

if (zipcodeLayer != null) 



zipcodeLayer.ZoomLevelSet.ZoomLevel10.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20; 

zipcodeLayer.FeatureSource.Projection = proj4; 

zipcodeLayer.IsVisible = true; 



zipcodeLayer.Open(); 

ValueStyle selectedZipCodes = new ValueStyle(); 

selectedZipCodes.ColumnName = "ZIP"; 



for (int i = 0; i < zipcodes.Length; i++) 



string zipcode = zipcodes;

ValueItem valueItem = new ValueItem(zipcode, new AreaStyle(new GeoPen(new GeoColor(0, 0, 255), 2), new GeoSolidBrush(GeoColor.FromArgb(0, GeoColor.StandardColors.Blue)))); 

valueItem.DefaultTextStyle = TextStyles.Capital1("ZIP"); 

selectedZipCodes.ValueItems.Add(valueItem); 



Collection<feature> features = zipcodeLayer.QueryTools.GetFeaturesByColumnValue("ZIP", zipcode); 

if (features.Count > 0) 



............ 

.................... 





zipcodeLayer.Close(); 



zipcodeLayer.ZoomLevelSet.ZoomLevel10.CustomStyles.Add(selectedZipCodes); 

}</feature>



John, 
  
 Thanks for you code. 
  
 I think your problem maybe casued by projection.  
  
 I suggest you add debug statement instead of break point, so that you can make sure this problem don’t comes from the QueryTools. 
  
 And is your zipcodeLayer inmemoryFeaturelayer? 
  
 Regards, 
  
 Don

No it is just a FeatureLayer. 
 Well I’m not doing any spatial query here so projection won’t matter.  
 Any other ideas? 


John, 
  
 Sorry I haven’t found some other problem from your code segment. 
  
 If you can provide a really simple sample which can reproduce this problem, I think that should be very helpful. 
  
 Regards, 
  
 Don

Does QueryTools.GetFeaturesByColumnValue have problem with mixed value type column?


btw the zipcode layer is constructed from new MultipleShapeFileFeatureLayer



John, 
  
 Your problem we haven’t found before, so we need more detail for reproduce that to make sure whether that’s bug. 
  
 Is your zipcodeLayer MultipleShapeFileFeatureLayer? 
  
 And are you make sure the problem is GetFeaturesByColumnValue API don’t work well? 
  
 Regards, 
  
 Don