我的代码如下:
protected void WorkInfo_RowUpdating(object sender, GridViewUpdateEventArgs e)      
        {
            OracleConnection conn = OracleCon.getCon();
            string sql = "update workinfo set mome='"
                + ((TextBox)(WorkInfo.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim() + "' where wid="
                + WorkInfo.DataKeys[e.RowIndex].Value.ToString();
            OracleBind.DataCom(sql);
            WorkInfo.EditIndex = -1;
            OracleBind.gvBind(WorkInfo, sql);
            
        }

解决方案 »

  1.   

    protected void WorkInfo_RowUpdating(object sender, GridViewUpdateEventArgs e)      
            { 
                OracleConnection conn = OracleCon.getCon(); 
                string sql = "update workinfo set mome='" 
                    + ((TextBox)(WorkInfo.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim() + "' where wid=" 
                    + WorkInfo.DataKeys[e.RowIndex].Value.ToString(); 
                OracleBind.DataCom(sql); 
                WorkInfo.EditIndex = -1; 
                OracleBind.gvBind(WorkInfo, sql); 
                            //需要再次绑定~
                WorkInfo.DataBind();
              } 
      

  2.   

    一开始的sql语句更新时取不到值,mome的值为空
      

  3.   

    当有数据时,update也取不到mome的值,就不往update中修改数据,出现的问题是:“IListSource 不包含任何数据源。”
      

  4.   

    才发现,你做的是string sql = "update workinfo set mome='" ....这样数据源怎么会有数据,需要重新查询才可以~
      

  5.   

     }
            protected void WorkInfo_RowUpdating(object sender, GridViewUpdateEventArgs e)      
            {
                OracleConnection conn = OracleCon.getCon();
                string sql = "update workinfo set mome='"
                    + ((TextBox)(WorkInfo.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim() + "' where wid="
                    + WorkInfo.DataKeys[e.RowIndex].Value.ToString();
                OracleBind.DataCom(sql);
                WorkInfo.EditIndex = -1;
                string sql1 = "select wid,cid,to_char(ondate,'yyyy-mm-dd')as ondate,to_char(ondutytime,'hh24:mi') as ondutytime,to_char(offdutytime,'hh24:mi') as offdutytime,mome from workinfo  where to_char(sysdate,'yyyy-mm-dd')>=to_char(ondate,'yyyy-mm-dd')  order by cid";
                OracleBind.gvBind(WorkInfo, sql);
                
            }
      

  6.   

    上面代码重新查询了,但是还是没有更新原来的数据,update的mome还是没有取到数据
      

  7.   

    找到错误了,少写了“ispostback”