LinQ: sub items and root in DataTable
-
Hi ! I have some codes below here: DataTable objTable = new DataTable(); objTable.Columns.Add("ID"); objTable.Columns.Add("Name"); objTable.Columns.Add("Root"); DataRow objrow1 = objTable.NewRow(); objrow1["ID"] = "1"; objrow1["Name"] = "1"; objrow1["Root"] = ""; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "11"; objrow1["Name"] = "11"; objrow1["Root"] = "1"; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "12"; objrow1["Name"] = "12"; objrow1["Root"] = "1"; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "121"; objrow1["Name"] = "121"; objrow1["Root"] = "12"; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "2"; objrow1["Name"] = "2"; objrow1["Root"] = ""; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "21"; objrow1["Name"] = "21"; objrow1["Root"] = "2"; objTable.Rows.Add(objrow1); And now, how can I list item and subitems in root is 1?Please help me !!!!
-
Hi ! I have some codes below here: DataTable objTable = new DataTable(); objTable.Columns.Add("ID"); objTable.Columns.Add("Name"); objTable.Columns.Add("Root"); DataRow objrow1 = objTable.NewRow(); objrow1["ID"] = "1"; objrow1["Name"] = "1"; objrow1["Root"] = ""; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "11"; objrow1["Name"] = "11"; objrow1["Root"] = "1"; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "12"; objrow1["Name"] = "12"; objrow1["Root"] = "1"; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "121"; objrow1["Name"] = "121"; objrow1["Root"] = "12"; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "2"; objrow1["Name"] = "2"; objrow1["Root"] = ""; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "21"; objrow1["Name"] = "21"; objrow1["Root"] = "2"; objTable.Rows.Add(objrow1); And now, how can I list item and subitems in root is 1?Please help me !!!!
you will need to make sure that there is a reference to
System.Data.DataSetExtensions
in your project.var Results = from data in objTable.AsEnumerable()
where data.Field("Root") == 1
select datafurther reading Linq query on a datatable[^] Queries in LINQ to DataSet[^]
Every day, thousands of innocent plants are killed by vegetarians. Help end the violence EAT BACON
-
you will need to make sure that there is a reference to
System.Data.DataSetExtensions
in your project.var Results = from data in objTable.AsEnumerable()
where data.Field("Root") == 1
select datafurther reading Linq query on a datatable[^] Queries in LINQ to DataSet[^]
Every day, thousands of innocent plants are killed by vegetarians. Help end the violence EAT BACON
-
Hi ! I have some codes below here: DataTable objTable = new DataTable(); objTable.Columns.Add("ID"); objTable.Columns.Add("Name"); objTable.Columns.Add("Root"); DataRow objrow1 = objTable.NewRow(); objrow1["ID"] = "1"; objrow1["Name"] = "1"; objrow1["Root"] = ""; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "11"; objrow1["Name"] = "11"; objrow1["Root"] = "1"; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "12"; objrow1["Name"] = "12"; objrow1["Root"] = "1"; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "121"; objrow1["Name"] = "121"; objrow1["Root"] = "12"; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "2"; objrow1["Name"] = "2"; objrow1["Root"] = ""; objTable.Rows.Add(objrow1); objrow1 = objTable.NewRow(); objrow1["ID"] = "21"; objrow1["Name"] = "21"; objrow1["Root"] = "2"; objTable.Rows.Add(objrow1); And now, how can I list item and subitems in root is 1?Please help me !!!!
var list = objTable.AsEnumerable();
var query = from l in list where l.Field<string>("root") == "1" select l; var result = query.Concat(from q in query from l in list where l.Field<string>("root") == q.Field<string>("id") select l); foreach (var r in result) { Console.WriteLine("value has id:{0}, root:{1}", r.Field<string>("id"), r.Field<string>("root")); }