目前遇到这样的一个问题,在一个存放图书信息的表中有图书的书号以及图书的出版社.表中存在着很多一个出版社出版的许多种书籍.在前台我要读出最新添加的前几条图书信息的出版社.会出现很多同一个出版社的名字.我想只显示一次出版社的名字.
最后的解决思路是:再new一个新的datatable 使用循环读出旧表中的记录,并进行判断,如果新表中已存在旧表中的记录时,就不再在新表中添加
private DataTable Getback(DataTable d){DataTable dtc = this.Get(); //得到原表中的数据,有重复的出版社出现 DataTable dt = new DataTable();//新new的一个表 #region 复制列 for(int j=0;j<dtc.Columns.Count;j++) { DataColumn dc = new DataColumn(dtc.Columns[j].ColumnName,typeof(string)); dt.Columns.Add(dc); } #endregion #region 复制行 for(int i=0;i<dtc.Rows.Count;i++) { bool exist = false; for(int k=0;k<dt.Rows.Count;k++) { if(dtc.Rows[i]["pub_id"].ToString()==dt.Rows[k]["pub_id"].ToString()) { exist=true; } else {
} } if(!exist) { DataRow dr = dt.NewRow(); for(int j=0;j<dtc.Columns.Count;j++) { dr[j]=dtc.Rows[i][j].ToString(); } dt.Rows.Add(dr); } return (DataTable); }}
