更新的时候老更新不了

解决方案 »

  1.   

    是不是忘记在 Page_Load 事件中检查 IsPostBack
      

  2.   

    更新事件中要写代码的,看看我这段代码:
    private void grdDepartment_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
       string departNo = ((TextBox)e.Item.Cells[0].Controls[0]).Text;//这里e.Item.Cells[0]第一列是部门编号,不会重复。
       DataRow[] drs = ds.Tables[0].Select("DEPARTNO = '" + departNo + "'");//这句就可以取出当前操作的一行。   // 数据库做了约束,DEPARTNO不会重复,drs里一般只有一条数据 [3/4/2005]
       foreach(DataRow dr in drs)
       {
         dr.BeginEdit();
         dr["DEPARTNO"] = ((TextBox)e.Item.Cells[0].Controls[0]).Text;
         dr["DEPARTNAME"] = ((TextBox)e.Item.Cells[0].Controls[1]).Text;
         dr.EndEdit();
        }//前台更新代码    if (ds.HasChanges())
           BusinessRules.sysMana.sysManaRules.UpdateDepartments(ds.GetChanges());//将更新数据提交到数据库
        grdDepartment.EditItemIndex = -1;
        grdDepartment.DataBind();//重新绑定数据集
       }
      

  3.   

    可能你的更新违反了数据库的约束,而你又用了Try....catch.但再catch中又错误没做任何处理.