gridview问题
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e){
string sql = "select * from Car";
DataTable dt = DbHelper.GetDataSet(sql).Tables[0];
dt.Rows[e.RowIndex].Delete();
GetData();
}
为什么点击删除没有反应呢,请高手帮帮忙,急!!!!!!!!!!!!
--------------------编程问答-------------------- 没明白你写的是什么意思
GetData是绑定数据源的意思吗?
那么第三行你所做的删除,是删除内存表吗? --------------------编程问答-------------------- dt.Rows[e.RowIndex].Delete(); 即使能删 也只是删除datatable中的。。。 要执行删除 怎么就没看到你的sql语句呢··· --------------------编程问答-------------------- 你这样删除只是删除DataTable里面的,页面上和数据库里面都删不了,页面上DataGridView.Rows[e.RowIndex].Remove(),数据库里面用Sql语句去删除 --------------------编程问答-------------------- dt的删除与你的数据库有毛关系吗?
dt只是删除内存中的记录,但并没有删除数据库中存在的记录 --------------------编程问答-------------------- 调试找原因吧 --------------------编程问答-------------------- 看你下你前台界面 点击删除按钮的按钮。设置属性CommandName="Delete",事件就进去了。 --------------------编程问答-------------------- 楼主是一个神奇的人啊,delete语句都没写就想删除数据 --------------------编程问答--------------------
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
string sql = "select * from Car";
DataTable dt = DbHelper.GetDataSet(sql).Tables[0];//查询数据
dt.Rows[e.RowIndex].Delete();//这里的删除只能操作DataTable 对象内容,但是没有吧DataTable 删除(操作)的内容持久化到数据库,关于ADO.net 数据集操作持久化数据有的对象只有DataSet (这里是DataSet持久化数据库的示例)
GetData();//这部分应该是绑定GridView1数据
}
第一种我在代码里注释说明了,还有第二种方式
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
//string sql = "select * from Car";
//DataTable dt = DbHelper.GetDataSet(sql).Tables[0];
//dt.Rows[e.RowIndex].Delete();
DbHelper.Delete(e.Values[0]);//删除数据库数据 关于Values的值是关联你操作Car表的主键值,我观察了,具体你可以查查
GetData();//重新绑定
}
应该能解决问题了,不懂再问我 --------------------编程问答-------------------- 为什么SQL语句是查询。~
补充:.NET技术 , ASP.NET