一行中一个Column值的多次更新

时间:2012-12-12 11:55:02

标签: asp.net datatable

下面的代码允许我在我选择的行中添加+1,但我的问题是,一旦更新,“值”的新值就不会被加载

 public void InspireMetrics()
    {
        DataTable table = (DataTable)Session["Metrics"];
        int Desire = Convert.ToInt32(table.Rows[0]["Value"]);
        int Parti = Convert.ToInt32(table.Rows[1]["Value"]);
        int Advo = Convert.ToInt32(table.Rows[2]["Value"]);
        if (SNSIn.Checked)
        {
           table.Rows[0][1] = Desire +1;
           table.Rows[1][1] = Parti +1;
           table.AcceptChanges();
           Databind();
           Chart2.DataSource = table;
        }
        if (TTIn.Checked)
        {
            table.Rows[0][1] = Desire +1;
            table.Rows[2][1] = Advo +1;
            DataBind();
            Chart2.DataSource = table;

        }
        if (MusicIn.Checked)
        {
            table.Rows[0][1] = Desire +1;
            table.Rows[1][1] = Parti +1;
            DataBind();
            Chart2.DataSource = table ;

        }
    }

因此,例如,如果我选择SNS它会更新,但不会应用新值,所以当我想选择音乐时,它不会添加一个朝向最新值

1 个答案:

答案 0 :(得分:0)

你缺少一些陈述。这就是你所需要的 -

     if (TTIn.Checked)
        {
            table.Rows[0][1] = Desire +1;
            table.Rows[2][1] = Advo +1;
            table.AcceptChanges(); //missed
            Chart2.DataSource = table; //first datasource and then databind
            Chart2.DataBind();
        }