【问题标题】:How to append query result to a datatable c#如何将查询结果附加到数据表c#
【发布时间】:2017-03-11 05:23:47
【问题描述】:

每次使用不同的参数调用该方法时,我都需要将查询结果附加到datatable。但是现在每次它都会覆盖datatable 的内容而不是追加内容。

可以追加吗?请帮帮我...

Protected void chkrow_CheckedChanged(object sender, EventArgs e) 
{
    DataTable dtble = new DataTable();
    CheckBox chkrow = (CheckBox)sender;
    gridViewRow gvrow = chkrow.Parent.Parent;   
    GridView gvemp = (GridView) grdemp.Rows[gvrow.RowIndex].Cells[2].FindControl("gvemp");
    string emp = grdemp.DataKeys[gvrow.RowIndex].Values[2].ToString();
    if(gvemp.Checked == true)
    {
        string sqls = "select * from emptable where empid= ' " + emp.ToString()  + "' " ;
        OracleCommand cmd = new OracleCommand(sqls, cn) ;
        OracleDataAdapter da = new OracleDataAdapter(cmd) ;
        da.Fill(dtble);
        //here I need to append result to dtble rather than overwriting when each checkbox is checked
    } 

} 

【问题讨论】:

  • 发布你需要的代码
  • 你在使用临时表吗?
  • 是的。我正在使用临时数据表。
  • 不好,但需要全局定义数据表,然后每次选中复选框时追加行。
  • 我试过了。但仍然覆盖内容

标签: c# asp.net datatable


【解决方案1】:

在函数外部定义变量 dtble 以使其可全局访问,在页面加载时填充它,加载网格视图,然后 -

Protected void chkrow_CheckedChanged(object sender,      EventArgs e) 
{
DataTable dtble_inner=new DataTable() ;
CheckBox chkrow=(CheckBox)sender;
gridViewRow gvrow=chkrow.Parent.Parent; 
GridView gvemp=(GridView) grdemp.                   Rows[gvrow.RowIndex].Cells[2].FindControl("gvemp");
string emp=grdemp. DataKeys[gvrow.RowIndex].Values[2].ToString();
if(gvemp.Checked==true)
{
    string sqls="select * from emptable where empid= ' " + emp. ToString()  +"' " ;
    OracleCommand cmd=new OracleCommand(sqls, cn) ;
    OracleDataAdapter da=new OracleDataAdapter(cmd) ;
    da. Fill(dtble_inner);
    if(dtble_inner.tables.count > 0 && dtble_inner.tables.rows.count >0)
     { 
         //something like below
         dtble.rows.add(dtble_inner.tables.rows(0));

     }
     // rebind your gridview here with dtble

} 

}

【讨论】:

  • 谢谢先生。我试试这个
猜你喜欢
  • 1970-01-01
  • 2017-12-04
  • 2016-01-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多