[WebMethod] public void findAddress(string input) { string streetLayerShapeFile = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, GlobalDef.LOCALMAPFOLDER + "VANCOUVER"+ GlobalDef.SHAPEEXT); Collection streetFeatures = null; ShapeFileFeatureLayer streetLayer = initShapefile(streetLayerShapeFile); //Geocoder geocoder = new Geocoder(); // Define a Collection of DbfColumnDefinition Collection columns = new Collection(); // Add necessary columns into the collection columns.Add(new DbfMatchingPluginColumn("ID_Street", ThinkGeo.MapSuite.MapSuiteGeocoder.DbfMatchingPluginColumnType.String,54)); columns.Add(new DbfMatchingPluginColumn("DT_LREFADDR", ThinkGeo.MapSuite.MapSuiteGeocoder.DbfMatchingPluginColumnType.Integer,2)); //columns.Add(new DbfMatchingPluginColumn("DT_Province", ThinkGeo.MapSuite.MapSuiteGeocoder.DbfMatchingPluginColumnType.String, 2)); columns.Add(new DbfMatchingPluginColumn("BB_CX", ThinkGeo.MapSuite.MapSuiteGeocoder.DbfMatchingPluginColumnType.Double, 10)); columns.Add(new DbfMatchingPluginColumn("BB_CY", ThinkGeo.MapSuite.MapSuiteGeocoder.DbfMatchingPluginColumnType.Double,10)); columns.Add(new DbfMatchingPluginColumn("BB_ULX", ThinkGeo.MapSuite.MapSuiteGeocoder.DbfMatchingPluginColumnType.Double,10)); columns.Add(new DbfMatchingPluginColumn("BB_ULY", ThinkGeo.MapSuite.MapSuiteGeocoder.DbfMatchingPluginColumnType.Double,10)); columns.Add(new DbfMatchingPluginColumn("BB_LRX", ThinkGeo.MapSuite.MapSuiteGeocoder.DbfMatchingPluginColumnType.Double,10)); columns.Add(new DbfMatchingPluginColumn("BB_LRY", ThinkGeo.MapSuite.MapSuiteGeocoder.DbfMatchingPluginColumnType.Double,10)); // Create the MatchDbf object according to the path and the collection of DbfColumnDefinition DbfMatchingPlugin.CreateDbf(@"C:\Source\gps\WEBMAPSERVER\CAN2009Q2\testStreets.dbf", columns); DbfMatchingPlugin matchingPlugIn = new DbfMatchingPlugin(@"C:\Source\gps\WEBMAPSERVER\CAN2009Q2\testStreets.dbf", DbfMatchingPluginReadWriteMode.ReadWrite); streetLayer.Open(); streetFeatures = streetLayer.FeatureSource.GetAllFeatures(ReturningColumnsType.AllColumns); int count = streetFeatures.Count(); String [] stName = new String[count]; Int16[] leftRefAdd = new Int16[count]; Double[] BB_CX = new Double[count]; Double[] BB_CY = new Double[count]; Double[] BB_ULX = new Double[count]; Double[] BB_ULY = new Double[count]; Double[] BB_LRX = new Double[count]; Double[] BB_LRY = new Double[count]; for (int i = 0; i results = matchingPlugIn.Match(input); matchingPlugIn.Close(); }