SqlCommandBuilder的十分之诡异,匪夷所思的错误问题~~~~我快疯了
我从一个有主键的表里查出来空信息,
SqlDataAdapter sda;
DataTable dt;
string sqlStr = "select * from aa where 1=0 ";
SqlConnection con = new SqlConnection("连接的字符串");
this.sda = new SqlDataAdapter(sqlStr,con);
this.dt = new DataTable();
this.sda.Fill(dt);
this.dataGridView1.DataSource = this.dt;
DataRow dr;
dr["OrderNo"] = "ff";//代码更新添加的一行的一列
this.dt.Rows.Add(dr);
点击提交的时候:
this.dt.Rows[0]["ArrID"] = 1;//代码再次更新一行的一列
SqlCommandBuilder scb = new SqlCommandBuilder(this.sda);
this.sda.Update(this.dt)
//**************************
问题是我查出来,之后,在datagridview 界面修改别的列的时候,在单元格没有结束编辑的时候提交,那个【点击提交的时候:】一下的更新的,和在在datagridview 界面修改的信息就没有提交,this.dt里的信息都更新了,问题是SqlCommandBuilder自动生成的sql语句还是【点击提交的时候:】上面刚开始查出来的时候的sql语句,SqlCommandBuilder没有及时更新,而我在提交前用this.dataGridView1.EndEdit();结束编辑也不行。很是郁闷~~~~~请高手帮忙啊.