筛选一个DataTable的数据,赋值给另外一个DataTable

假设:
有2个DataTable:DataTableA、DataTableB。
要求:
筛选DataTableA中,itemType字段值为book的数据,然后把筛选出来的数据,赋给DataTableB

实现:
DataView view = new DataView();
view.Table = DataTableA;
view.RowFilter = "itemType = 'book'";//itemType是DataTableA中的一个字段
DataTableB= view.ToTable();
或者:
DataRow[] rows = DataTableA.Select("itemType = 'book'");
DataTableB= DataTableA.Clone();
foreach (DataRow row in rows)
{
     DataTableB.ImportRow(row);
}

或者

<hr>

/// 执行DataTable中的查询返回新的DataTable
        /// </summary>
        /// <param name="dt">源数据DataTable</param>
        /// <param name="condition">查询条件</param>
        /// <returns></returns>
        private DataTable GetNewDataTable(DataTable dt, string condition,string sortstr)
        {
            DataTable newdt = new DataTable();
            newdt = dt.Clone();
            DataRow[] dr = dt.Select(condition,sortstr);
            for (int i = 0; i < dr.Length; i++)
            {
                newdt.ImportRow((DataRow)dr[i]);
            }
            return newdt;//返回的查询结果
        }

 

posted on 2009-12-17 15:38  Love婷  阅读(2934)  评论(0编辑  收藏  举报