我在ListView_ItemUpdating()事件中增加了对数据库的操作,但是没有效果
using (SqlConnection connection = new SqlConnection(System.Web.Configuration.WebConfigurationManager.AppSettings["Conn"].ToString()))
        {
            using (SqlCommand command = new SqlCommand(sqlStr, connection))
            {
                command.Parameters.Add("@qxlx", SqlDbType.VarChar, 50);
                command.Parameters.Add("@qxbh", SqlDbType.Int, 4);
                command.Parameters[0].Value = ddlType.SelectedValue;
                command.Parameters[1].Value = Convert.ToInt32(lbbh.Text);
                command.Connection.Open();
                command.ExecuteNonQuery();
            }
        }

解决方案 »

  1.   

    大神们来看看啊!运行无误,但是就是插入不进去。
      protected void ListView1_ItemUpdating(object sender, ListViewUpdateEventArgs e)
        {
            //获取ListView中的DropDownList控件
            DropDownList ddlType = (DropDownList)ListView1.Items[e.ItemIndex].FindControl("ddlType");
              //e.NewValues["qxlx"] = ddlType.SelectedValue;
            ddlType.SelectedValue =(string)e.OldValues["qxlx"];
            Label lbbh = (Label)ListView1.Items[e.ItemIndex].FindControl("qxbhLabel1");
            /*将选择的项更新会数据库*/
            string sqlStr = "update T_qixie set qxlx=@qxlx where qxbh=@qxbh";
            //string sqlStr = "update T_qixie set qxlx='ccf' where qxbh=30";
            using (SqlConnection connection = new SqlConnection(System.Web.Configuration.WebConfigurationManager.AppSettings["Conn"].ToString()))
            {
                using (SqlCommand command = new SqlCommand(sqlStr, connection))
                {
                    command.Parameters.Add("@qxlx", SqlDbType.VarChar,50);
                    command.Parameters.Add("@qxbh", SqlDbType.Int, 4);
                    command.Parameters[0].Value = ddlType.SelectedValue;
                    command.Parameters[1].Value = Convert.ToInt32(lbbh.Text);
                    command.Connection.Open();
                    command.ExecuteNonQuery();
                }
            }
        }
      

  2.   

     ListView1_ItemUpdated
    不是应该用吗?ItemUpdating是点修改时发生,是用来绑定数据的;
    ItemUpdated是修改完,点保存时发生的
      

  3.   


    ItemUpdating是点击更新的时候用的,我认为没什么区别,刚刚上网听说好像是ms的bug
      

  4.   

    你说的是“插入”吧,但是你写的语句是update T_qixie set qxlx=@qxlx where qxbh=@qxbh另,据我所知,微软再烂,好像也未曾出过这么大的BUG的
      

  5.   

    也不算是bug就是服务端的控件在客户端渲染的不同。
      

  6.   

    你要实现什么功能?如果是更新记录的话,看看sql语句是否起了作用,如果要新增(插入新的)记录的话写的sql语句应该是Insert into 这样的
      

  7.   


    LZ啊,好好再看看关于SQL的书籍吧,按照你的描述,我的理解为:执行了你的程序之后,数据库里未多出一行新增的记录。如果是这样的话,那你的SQL语句错的太厉害了。update != insert。你这条语句还有个where,如果这个where不满足,则该语句压根就不会执行update,因此没事发生是很正常的。