Instead of using the Include
method you could use Load
.
You could then do a for each and loop through all the children, loading their children. Then do a for each through their children, and so on.
The number of levels down you go will be hard coded in the number of for each loops you have.
Here is an example of using Load
: http://msdn.microsoft.com/en-us/library/bb896249.aspx