Hi, wanted to give an update on this, because I’m still getting an error. Here’s the info I found stepping through ThinkGeo’s code:
First it hits FeatureSource.cs - line 3063:
return this.GetFeaturesInsideBoundingBoxCore(boundingBox, returningColumnNames);
Then GeoFdoFeatureSource.cs - line 367:
((IDisposable) reader).Dispose();
Finally this throws the main error:
FdoVectorFeatureSource.cs - line 246
DataTable dataTable = (DataTable) this.assemblyType.GetMethod("GetFeatures", new Type[2]
{
typeof (string),
typeof (IEnumerable<string>)
}).Invoke(this.loadObject, new object[2]
{
(object) filterString,
(object) returningColumnNames
});
The output window displays the following when the error occurs:
in function: private Collection<Feature> FEg\u003D(string filterString, IEnumerable<string> returningColumnNames)
at MapSuiteFdoExtension.GeoFdoFeatureSource.GetFeatures(String filterString, IEnumerable`1 returningColumnNames) in GeoFdoFeatureSource.cs:line 335</StackTrace><ExceptionString>OSGeo.FDO.Common.Exception: Item 'label' not found in collection
at OSGeo.FDO.Schema.PropertyDefinitionCollection.get_Item(String name)
at MapSuiteFdoExtension.GeoFdoFeatureSource.GetFeatures(String filterString, IEnumerable`1 returningColumnNames) in GeoFdoFeatureSource.cs:line 335</ExceptionString></InnerException></Exception></TraceRecord>
An unhandled exception of type 'System.Reflection.TargetInvocationException' occurred in mscorlib.dll
I’m about to do the following with the layer:
personalGeoDatabaseFeatureLayer.Open();
personalGeoDatabaseFeatureLayer.FeatureSource.GetAllFeatures(ReturningColumnsType.AllColumns);
Collection<FeatureSourceColumn> columnNames = personalGeoDatabaseFeatureLayer.FeatureSource.GetColumns();
personalGeoDatabaseFeatureLayer.Close();
And I can confirm from the above that the correct features are in the layer.
The error only happens when I am panning/zooming to an extent that contains any part of the layer.
Converting the .mdb to a filegeodatabase or shapefiles lets me load it in fine. I’m at a loss as to what the error could be.