title: How to sort a C# list of data where the data is a hierarchical tree (menu)?
body: <p>I'm pulling a dataset into a c# list and to sort it.  It's a hierarchical menu:</p>
  
  <p>sample object:</p>
  
  <pre><code>public class NavigationInfo
  {
      public Int32 Id { get; set; }
      public Int32 ParentId { get; set; } 
      public String Text { get; set; }
      public String Url { get; set; }
      public Int32 Sort { get; set; }
  }
  </code></pre>
  
  <p>The ParentId is recursive to Id and Sort is an ascending integer within the ParentId.  How is that done using a collection of <code>NavigationInfo</code> in <code>List&lt;NavigationInfo&gt;</code>?</p>