DataTableをselectで取り出したDataRowの配列をDataTableに変換するには、CopyToDataTable()をつかいます。
たとえば、DataTableからSelectで行を取り出すと、DataRowの配列で返されますが、それをまとめてTableに変換するには、次のようにします。
DataTable dt = new DataTable(); DataColumn[] dc = { new DataColumn("name", typeof(string)), new DataColumn("age", typeof(int)) }; dt.Columns.AddRange(dc); DataRow dr = dt.NewRow(); dr["name"] = "tanaka"; dr["age"] = "18"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["name"] = "inoue"; dr["age"] = "24"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["name"] = "yamada"; dr["age"] = "19"; dt.Rows.Add(dr); DataRow[] selectedRows = dt.Select("ageちなみに、DataTableの内容をごっそりDataRowに変換したかったら、単に、
DataRow[] selectedRows = dt.Select();とします。
参考になったサイトさん:
http://devlights.hatenablog.com/entry/20090130/p1