private void btnReadData_Click(object sender, EventArgs e) { Reset(); try { this.Cursor = Cursors.WaitCursor; if (string.IsNullOrEmpty(ucAxfFolder.SelectedPath)) { return; } if (ucTargetFeatureClass.SelectFeatureLayer == null) { return; } _axfInfoList = new List <AxfInfo>(); List <FileInfo> axfFileInfos = FolderHelper.GetFileInfos(this.ucAxfFolder.SelectedPath, new List <string>() { ".axf" }); foreach (FileInfo axfFileInfo in axfFileInfos) { if (axfFileInfo.Name.StartsWith("BackgroundLayers")) { continue; } if (db.Open(axfFileInfo.FullName)) { System.Data.SqlServerCe.SqlCeResultSet pSqlCeResultSet = db.GetTableData("AXF_TABLES", null, SortOrder.None) as System.Data.SqlServerCe.SqlCeResultSet; dataGridView1.DataSource = pSqlCeResultSet; List <AxfTables> pAxfTablesList = AxfTables.GetAxfTablesList(pSqlCeResultSet, dataGridView1); foreach (AxfTables axfTables in pAxfTablesList) { if (axfTables.TableName != this.ucTargetFeatureClass.SelectFeatureLayer.Name) { continue; } pSqlCeResultSet = db.GetTableData(axfTables.TableName, null, SortOrder.None) as System.Data.SqlServerCe.SqlCeResultSet; dataGridView1.DataSource = pSqlCeResultSet; List <AxfField> pAxfFieldList = AxfField.GetAxfFieldList(pSqlCeResultSet, dataGridView1); AxfInfo pAxfInfo = new AxfInfo { AddCount = pAxfFieldList.Count(c => c.AxfStatus == 1), ModifyCount = pAxfFieldList.Count(c => c.AxfStatus == 2), DeleteCount = pAxfFieldList.Count(c => c.AxfStatus == 128), NoEditCount = pAxfFieldList.Count(c => c.AxfStatus == 0), AxfFieldList = pAxfFieldList, SourceLayerName = axfTables.TableName }; IFeatureClass sourceFeatureClass = FeatureClassUtil.GetFeatureClass(axfFileInfo.FullName, axfTables.TableName); if (sourceFeatureClass == null) { pAxfInfo.IsSelect = false; } else { pAxfInfo.IsSelect = true; } pAxfInfo.SourceFeatureClass = sourceFeatureClass; pAxfInfo.TargetLayerName = this.ucTargetFeatureClass.SelectFeatureLayer.Name; pAxfInfo.TargetFeatureLayer = this.ucTargetFeatureClass.SelectFeatureLayer; pAxfInfo.AxfFilePath = axfFileInfo.FullName; _axfInfoList.Add(pAxfInfo); } db.Close(); } } dataGridView2.DataSource = _axfInfoList; } catch (Exception exception) { MessageBox.Show(exception.Message); } finally { this.Cursor = Cursors.Default; } }
public void Close() { _sqlCeDb.Close(); _sqlCeDb.Dispose(); }