如何根据条件 取出DataTable里的几行数据给另外一个DataTable
例如DataTable里我想取出时间是2012-2-1号的数据,然后付给另外一个空的DataTable,怎么做?
[解决办法]
protected void Page_Load(object sender, EventArgs e) { GetData(); } private DataTable GetData() { DataTable dt = new DataTable(); dt.Columns.Add("Id", typeof(int)); dt.Columns.Add("Time", typeof(string)); dt.Rows.Add(1, "2012-2-1"); dt.Rows.Add(2, "2012-2-2"); dt.Rows.Add(3, "2012-2-3"); dt.Rows.Add(4, "2012-2-4"); dt.Rows.Add(5, "2012-2-5"); dt.Rows.Add(6, "2012-2-1"); dt.Rows.Add(7, "2012-2-2"); dt.Rows.Add(8, "2012-2-2"); dt.Rows.Add(9, "2012-2-1"); dt = dt.AsEnumerable().Where(o => DateTime.Parse(o.Field<string>("Time")) == DateTime.Parse("2012-2-1")).CopyToDataTable(); return dt; }
[解决办法]
建立一个空的DataTable,结构一致
即
DataTable newdt=SourceDt.Clone();
DataRow[] spliterros=SorceDt.Select('条件');
for(i=0;i<spliterros.Length;i++)
{
newdt.ImportRow(spliterros[i]);
}
[解决办法]