【问题标题】:Both DataSource and DataSourceID are defined on 'GridView1'. Remove one definitionDataSource 和 DataSourceID 都在“GridView1”上定义。删除一个定义
【发布时间】:2012-04-29 19:07:58
【问题描述】:

我正在使用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();”!但是当我刷新网页时,代码 工作,但我总是得到这个错误。
  • 我在谷歌上搜索过,我发现我不能同时使用这两个..但我需要 查看gridview上的信息,我无法删除 sqldatasource 绑定,我还需要让代码工作。
  • 我试过 DataGridviewID = null;我没有收到任何错误,但是 什么都没有改变,代码没有被执行..什么都没有发生

【问题讨论】:

    标签: c# asp.net sql


    【解决方案1】:

    如果你发出这个语句,你真的需要重新分配数据源吗

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

    并使用

      SqlDataSource1.Update();
    

    有一个使用datasource的例子,希望对你有帮助Datasource example

    【讨论】:

    • 你有网格的DataSourceID="SqlDataSource1"吗?您是否期望网格具有更新年龄
    • 您必须在数据源中提供更新命令,例如 UpdateCommand="UPDATE Employees SET Address=@Address WHERE EmployeeID=@EmployeeID">
    • 不,我没有那个。我需要这样做吗?
    • 我已经更新了我的答案并添加了一个使用数据源的链接我希望这会对你有所帮助
    • 是的,我读过它,所以我替换了更新命令和参数。添加 No , ID ) 并且..没有任何反应
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多