SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings["YxConnection"].ToString().Trim());
            SqlCommand comm = new SqlCommand("update t_SendInfoList_Worker_Suc set jieguo=@nid where nid=@id", conn);            SqlParameter parm1 = new SqlParameter("@nid", SqlDbType.Int);
            parm1.Value = ((DropDownList)e.Item.FindControl("dep_jieguo")).SelectedValue;
            SqlParameter parm2 = new SqlParameter("@id", SqlDbType.Int);
            parm2.Value = this.DataGrid1.DataKeys[e.Item.ItemIndex];
          
            comm.Parameters.Add(parm1);
            comm.Parameters.Add(parm2);
            conn.Open();
            comm.ExecuteNonQuery();
            conn.Close();

解决方案 »

  1.   

    ((DropDownList)e.Item.FindControl("dep_jieguo")).SelectedValue;//这个要转换为INT,看提示这个应该是string的, convert一下
      

  2.   

    还有这个this.DataGrid1.DataKeys[e.Item.ItemIndex];要是也是string的话也要转换下
      

  3.   

    param1.Value = Int32.Parse(((DropDownList)e.Item.FindControl("dep_jieguo")).SelectedValue.ToString());param2.Value = Int32.Parse(this.DataGrid1.DataKeys[e.Item.ItemIndex].ToString());
      

  4.   

    我表中的NID是biginit,jieguo是INt类型的!
      

  5.   

    1楼的就正确,SelectedValue是int类型的!!
      

  6.   

    parm1.Value = Convert.toint(((DropDownList)e.Item.FindControl("dep_jieguo")).SelectedValue);
      

  7.   

    parm1.Value =Convert.ToInt32(((DropDownList)e.Item.FindControl("dep_jieguo")).SelectedValue);
    首先得保存你DropDownList选中的是数字或者浮点数(小数点会丢失),如果是其它的东西就没法转了
      

  8.   

    才学了JAVA,再开始学C#。
    看到有点不太明白,你要转类型,但是你又没写转的代码。
    要么就INT32.prase要么就convert下啊!!