参考参考http://www.aspcool.com/lanmu/browse1.asp?ID=1201&bbsuser=aspnet
http://www.pconline.com.cn/pcedu/empolder/net/0312/255517.html
http://www.cnblogs.com/elevenwolf/archive/2004/08/12/32512.aspx

解决方案 »

  1.   

    呵呵,我刚做过,看看下面一段代码可能对你有帮助
    private DataTable GetTravSubtotal()
    {
    DataTable dt=new DataTable(); //create a blank table - CTYPE,CCURR,CAMNT
    dt.Columns.Add("CTYPE");
    dt.Columns.Add("CCURR");
    dt.Columns.Add("CAMNT");
    dt.AcceptChanges();
    foreach (DataRow dr in dsb.Tables[0].Rows)
    {
    DataRow[] rows=dt.Select("CTYPE='"+dr["FVPROD"].ToString().Trim()+"' AND CCURR='"+dr["FVISOC"].ToString().Trim()+"'");
    if (rows.Length>0) //if type && cur already exists in dt, amount +=
    {
    rows[0]["CAMNT"]=Convert.ToDecimal(rows[0]["CAMNT"])+Convert.ToDecimal(dr["FVAAMT"]);
    }
    else //if is a new type && cur, add it to dt
    {
    DataRow nrow=dt.NewRow();
    nrow["CTYPE"]=dr["FVPROD"].ToString().Trim();
    nrow["CCURR"]=dr["FVISOC"].ToString().Trim();
    nrow["CAMNT"]=dr["FVAAMT"].ToString().Trim();
    dt.Rows.Add(nrow);
    dt.AcceptChanges();
    }
    }
    return dt;
    }
      

  2.   

    brightheroes(闭关|那一剑的风情) 
    感谢支持,提供的连接我正在看
    Shamus()
    感谢支持,你提供的代码,我初步看了一下,是我的意图,我在想有没有更好的或者简单的.Net现成的方法存在?
      

  3.   

    DataSet ds = new DataSet();
    DataTable dt1 = ds.Tables[0];
    DataTable dt3 = new DataTable();
    dt3.Columns.Add("a");
    dt3.Columns.Add("bSum");
    string sTemp = "";
    for(int i = 0; i < dt1.Rows.Count;i++)
    {
    if(sTemp.IndexOf(dt1.Rows[i]["a"].ToString().Trim())==-1)
    {
    sTemp+=","+dt1.Rows[i]["a"].ToString().Trim();
    }
    }
    string[] saTemp = sTemp.Split(',');
    for(int j = 0; j < saTemp.Length;j++)
    {
    if(saTemp[j].Trim()!="")
    {
    int iTemp =0;
    for(int k = 0 ; k < dt1.Rows.Count;k++)
    {
    if(saTemp[j].Trim() == dt1.Rows[k]["a"].ToString().Trim())
    {
    iTemp+=int.Parse(dt1.Rows[k]["b"].ToString());
    }
    }
    DataRow dr = dt3.NewRow();
    dr[0] = saTemp[j].Trim();
    dr[1] = iTemp;
    }
    }写了这么多,有给我50分以上,我骂你^^
      

  4.   

    thinhunan(仁渣) :
    第一:我首先肯定你的思路是正确的,是一个不错的思路.
    第二:你要明白,一个好的程序思路\算法,不是看代码量的,写了一大堆的代码,不一定是个有价值的程序.建议你看看你的楼上Shamus提供的代码,Shamus代码当中的dt.Select算法我想比你的循环体内判断if(saTemp[j].Trim() == dt1.Rows[k]["a"].ToString().Trim()更加的经典.
    第三:你的程序非常的优秀,但是我在结贴的时侯将一分不给,不是分的问题,如果一个好的程序,很难用金钱的尺度来衡量,更何况是CSDN的分了,我的分不多,如果有同仁觉得要更多的CSDN的分对他有正当的、实际的意义价值,我愿意将我全部的分捐赠给他,在一个,我的一个帖子只能给100分,多了需要斑竹的帮助才能增加分,之所以不给你这个回贴分,是我觉得你的做法不妥当.
    第四,如果你觉得我做得不对,建议你向CSDN有关方面投诉我,作为程序员和IT人,希望你注意你的形象和素质.最后非常感谢你的支持!!