【问题标题】:Asp.net Listview does not bind after performing insert operationAsp.net Listview 执行插入操作后不绑定
【发布时间】:2017-06-19 03:44:54
【问题描述】:

我的页面中有列表视图控件。我得到填充 onPage 加载以及在表中输入新记录时。问题是在执行 InsertOperation 之后我再次调用它的 bind 方法,但它没有刷新它的数据。因此,我对其进行了调试并在 SQL 中执行了实际查询,并且查询返回并添加了行。

protected void insertBulkPricing()
{
    try {
        MySqlConnection con = new MySqlConnection();
        con.ConnectionString = ConfigurationManager.ConnectionStrings("conio2").ConnectionString();
        MySqlCommand cmd = new MySqlCommand();
        cmd.CommandText = "INSERT INTO bulk_pricing (productID, rangeFrom, rangeTo, price, time, discount, status) VALUES(@productID, @rangeFrom, @rangeTo, @price, @time, @discount, @status)";
        cmd.Parameters.AddWithValue("@productID", productID.Text);
        cmd.Parameters.AddWithValue("@rangeFrom", bulkRangeFrom.Text);
        cmd.Parameters.AddWithValue("@rangeTo", bulkRangeTo.Text);
        cmd.Parameters.AddWithValue("@price", bulkPrice.Text);
        cmd.Parameters.AddWithValue("@time", bulkTime.Text);
        cmd.Parameters.AddWithValue("@discount", bulkDiscount);
        cmd.Parameters.AddWithValue("@status", "active");
        cmd.Connection = con;
        con.Open();
        this.bindBulkPricing();
        cmd.ExecuteNonQuery();
        con.Close();
    } catch (Exception ex) {
        Response.Write(ex);
    }
}

private void bindBulkPricing()
{
    string action = Request.QueryString("action").ToString;
    if (action == "new") {
        productID.Text = rowNumber;
    }

    try {
        string str = "select * from bulk_pricing where productID = @productID";
        string conString = ConfigurationManager.ConnectionStrings("conio2").ConnectionString;
        MySqlConnection con = new MySqlConnection(conString);
        MySqlCommand cmd = new MySqlCommand(str);
        cmd.Parameters.AddWithValue("@productID", productID.Text);
        con.Open();
        MySqlDataAdapter da = new MySqlDataAdapter();
        cmd.Connection = con;
        da.SelectCommand = cmd;
        DataTable dt = new DataTable();
        da.Fill(dt);
        bulkPriceList.DataSource = dt;
        bulkPriceList.DataBind();
        con.Close();
    } catch (Exception ex) {
        Response.Write(ex);
    }
}

【问题讨论】:

    标签: c# asp.net listview


    【解决方案1】:
    protected void insertBulkPricing()
    {
        try {
            MySqlConnection con = new MySqlConnection();
            con.ConnectionString = ConfigurationManager.ConnectionStrings("conio2").ConnectionString();
            MySqlCommand cmd = new MySqlCommand();
            cmd.CommandText = "INSERT INTO bulk_pricing (productID, rangeFrom, rangeTo, price, time, discount, status) VALUES(@productID, @rangeFrom, @rangeTo, @price, @time, @discount, @status)";
            cmd.Parameters.AddWithValue("@productID", productID.Text);
            cmd.Parameters.AddWithValue("@rangeFrom", bulkRangeFrom.Text);
            cmd.Parameters.AddWithValue("@rangeTo", bulkRangeTo.Text);
            cmd.Parameters.AddWithValue("@price", bulkPrice.Text);
            cmd.Parameters.AddWithValue("@time", bulkTime.Text);
            cmd.Parameters.AddWithValue("@discount", bulkDiscount);
            cmd.Parameters.AddWithValue("@status", "active");
            cmd.Connection = con;
            con.Open();
            cmd.ExecuteNonQuery();
            con.Close();
            this.bindBulkPricing();
        } catch (Exception ex) {
            Response.Write(ex);
        }
    }
    

    您只能在运行this.bindBulkPricing() 后运行cmd.ExecuteNonQuery()。我希望它对你有用。

    【讨论】:

      猜你喜欢
      • 2013-12-04
      • 1970-01-01
      • 1970-01-01
      • 2016-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-20
      相关资源
      最近更新 更多