I have been stuck in this problem for several days and would appreciate some ideas or help in solving it. I have a set of objects
public class Hierarchy { public Hierarchy(string iD, string name, int level, string parentID, string topParent) { ID = iD; Name = name; Level = level; ParentID = parentID; Children = new HashSet<Hierarchy>(); } public string ID { get; set; } public string Name{ get; set; } public int Level { get; set; } public string ParentID { get; set; } public ICollection<Hierarchy> Children { get; set; } }
Linq query data for my object:
ID Name Level ParentID 295152 name1 1 null 12345 child1 2 295152 54321 child2 2 295152 44444 child1a 3 12345 33333 child1b 3 12345 22222 child2a 3 54321 22221 child2b 3 54321 22002 child2c 3 54321 20001 child2a2 4 22222 20101 child2b2 4 22222
This data may extend to unknown level depths (I show only 4). Ultimately, I would have one Hierarchy with a collection of several children, which, in turn, can have a collection of several children ... etc ... There will always be only one top-level object.
I am trying to use Linq as much as possible in this project.
This obviously needs some sort of recursive method, but I'm stuck. Any ideas or help would be appreciated.
TIA
source share