I'm starting to use the WorldMapKit (and yes, I know there is a forum for that). The renderers in that package operate on a folder of shapefiles, and read them all into a MultipleShapefileFeatureLayer. This is done by using a constructor that accepts a wildcard pattern for the shapefiles, and a single filename for an index file that covers the entire set of shapefiles. The extension of the index is an midx/mids pair, instead of the normal idx/ids pair.
This structure is a problem for us, because of the volume of the deployment, and any one customer is only interested in a single state. I'm exploring two options. We are going to deploy one DVD of common world and USA data to all customers, and then state-specific add-on DVD's to individuals. Having made this decision, I now have questions about the MultipleShapefileFeatureLayer that are more generic than the specific WorldMapKit application, hence posting here:
1) Is an midx/mids pair a "multiple file" version of the idx/ids pair?
2) The second parameter of the two parameter constructor is defined as an index name pattern. The shapefilename pattern is defined as "??lka40.shp", for instance, and the ?? matches the two state abbreviation, as there is an lka40 file for each state. But in the WorldMapKit, the index name pattern is just "lka40.midx". There is only one index for all 50 state shapefiles. But..... could I build an idx/ids pair for each state shapefile, and then use "??lka.idx" as the index name pattern? Can the Multiple FeatureShapefile operate off of multiple index files, as the constructor parameter implies?
3) If the answer to question 2) is yes, then are there performance hits for using multiple index files? Certainly not when only one shapefile is included, but how about two? ten? twenty?
4) The MultipleShapefileFeatureLayer BuildIndex has an overload defined as: ThinkGeo.MapSuite.Core.MultipleShapeFileFeatureLayer.BuildIndex(string, string, ThinkGeo.MapSuite.Core.BuildIndexMode), where the second parameter is defined as an indexFilenamePattern. Does this mean that if I call Buildindex with "??lka40.shp" as the shapefile pattern, and "??lka40.idx" as the index file pattern, that I would get a matching index for each shapefile? Or is that parameter really a little misnamed?
Is there any documentation on the MultipleShapefileFeatureLayer or MultipleShapefileFeatureSource?
Thanks!