title: Creating a tree with LINQ expression
body: <p>I have a C# List of following fields which are returned by a stored procedure:</p>
  
  <pre><code>CarrierId   ParentCarrierId Name Descrition
  1            NULL            A         AA
  2              1             B         BB
  3              1             C         CC
  4              3             D         DD
  5            NULL            E         EE
  </code></pre>
  
  <p>I need to construct a nested object list out of this output </p>
  
  <p>So each object of Carrier should have list of all it's children. Can anyone help me construct a LINQ code to accomplish this?</p>
  
  <p>Desired Result:</p>
  
  <pre><code> CarrierId = 1
        |__________________ CarrierId = 2
        |__________________ CarrierId = 3
                                |___________________ CarrierId = 4
  
   CarrierId = 5
  </code></pre>
  
  <p>Desired result should be as mentioned above           </p>