2013-08-27 56 views
0

我绑定DataGridView的DataSource属性并使用DataAdaptor及其工作进行更新。现在我试图从Excel文件DataSource与DataGridView的DataSource合并,并将这些合并DataSource保存在数据库中,2数据源获取合并,但DataAdaptor无法更新数据库中的此合并数据源,即使我更新DataAdaptor时没有得到任何错误,这里是代码合并和保存数据源datagridview的数据源未得到更新

 //Code for Merging DataSources 
     byte[] dataTable = GetExcelFileByteArray(); 
     //ExcelDataTable is of type DataTable 
     ExcelDataTable = GetTableDataOfByteArrayOfExcel(dataTable); 
     //dgvAllGridView is DataGridVIew 
     DataTable _dgvDataTable = this.dgvAllGridView.DataSource as DataTable; 

     if (!ExcelDataTable.Columns.Contains("ID")) 
      ExcelDataTable.Columns.Add("ID", _dgvDataTable.Columns["ID"].GetType()).SetOrdinal(0); 

     _dgvDataTable.Merge(ExcelDataTable, true, MissingSchemaAction.Ignore); 
     dgvAllGridView.DataSource = _dgvDataTable; 

     //Code for Updatating DataAdaptor 
     //DataAdaptor is a OleDBDataAdaptor 
     DataAdaptor.UpdateCommand = new OleDbCommandBuilder(DataAdaptor).GetUpdateCommand(); 
     DataAdaptor.InsertCommand = new OleDbCommandBuilder(DataAdaptor).GetInsertCommand(); 
     DataAdaptor.Update((DataTable)dgvAllGridView.DataSource); 

回答

1

在上一个代码中添加了dgvAllGridView.DataSource = _dgvDataTable;? 它将刷新DGV数据源..

+0

是的,我说是在代码 –

+0

'DataAdaptor.Update((数据表)dgvAllGridView.DataSource)后,我的意思是结束;'行? ..(在你的上面的代码..) – matzone