我有一个用C#asp.net开发的网页。在这里,我有gridview绑定到我的table1。 UserDetails列是id,userID,用户名 我有另一个DashbaordData有列 - data1,data2和createdby。
这里输入来自DashbardData的columnby列和来自userDetails的userID的数据是相同的。
我想删除DashbardData中的记录,从删除事件gridview(绑定到userDetails)到DashbardData .createdby = userDetails.userID的where条件。
protected void GridView1_RowDeleting(object sender, System.Web.UI.WebControls.GridViewDeleteEventArgs e)
{
try
{
GridViewRow row = (GridViewRow)GridView1.Rows[e.RowIndex];
Label id = (Label)row.FindControl("lblRecordID");
Label userID = (Label)row.FindControl("lbluserID");
OleDbConnection con = new OleDbConnection(conDB);
OleDbCommand cmd1 = new OleDbCommand();
cmd1.CommandText = "delete* from DashboardData where Createdby =" + userID.Text + "";
cmd1.Connection = con;
con.Open();
cmd1.ExecuteNonQuery();
con.Close();
这里在代码中,我从userdetails表获取userID值,该表绑定到gridview,并传递该userID以删除查询以从Dashbaordata表中删除记录。
在调试中我看到该查询是正确的,它正在拾取正确的值但是当它执行cmd1.ExecuteNonQuery();没什么好开心的。它会捕获部分,并在找不到参数时给出错误。
我怀疑我们是否可以这样做 - 使用某些不同的表gridview的行删除事件删除另一个表记录?
你可以帮我解决一下我是怎么做到的。