小编典典

DataSource和DataSourceID均在“ GridView1”上定义。删除一个定义

sql

我正在使用gridview和SqlDataSource将数据表信息绑定到gridview。在gridview更新事件中,我有以下代码:

protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
  {
                    var ID = (int)GridView1.DataKeys[e.RowIndex]["No"];
                    string costring = "the conn string";
                    string query = "UPDATE mytable SET Age = @Age WHERE No = " + ID;
                    using (SqlConnection dataConnection = new SqlConnection(costring))
                    {
                        using (SqlCommand com = new SqlCommand(query, dataConnection))
                        {
                            dataConnection.Open();
                            int valueID = 18;
                            com.Parameters.AddWithValue("Age", valueID);
                            com.ExecuteNonQuery();
                            GridView1.DataSource = SqlDataSource1;
                            GridView1.DataBind();
                            dataConnection.Close();
                        }
                    }
                 }
  • 如果单击更新事件,则会得到:“ DataSource和DataSourceID都在’GridView1’上定义。删除一个定义。” 这里是“ GridView1.DataBind();”!但是,当我刷新网页时,代码可以正常工作,但始终会收到此错误。
  • 我在Google上进行搜索,发现无法同时使用两者。.但是我需要查看gridview上的信息,并且无法删除sqldatasource绑定,并且还需要使代码正常工作。
  • 我试过了DataGridviewID = null; 而且我没有收到任何错误,但是什么也没改变,代码没有执行..什么也没有发生

阅读 149

收藏
2021-04-14

共1个答案

小编典典

如果发出此语句,是否真的需要再次分配数据源?

  GridView1.DataSource = SqlDataSource1;
  GridView1.DataBind();

和使用

  SqlDataSource1.Update();

有使用数据源的一个例子,我希望这将有助于你的数据源例如

2021-04-14