private static List <Model.InternalVendorInventory.Category> MapCategories(List <Category> categories, Dictionary <string, List <Song> > songMap) { List <Model.InternalVendorInventory.Category> cList = new List <Model.InternalVendorInventory.Category>(); foreach (var category in categories) { Model.InternalVendorInventory.Category c = new Model.InternalVendorInventory.Category(); c.Name = category.Name; c.Id = category.Id; if (songMap.TryGetValue(c.Id, out var songs)) { c.Songs = songs; } c.Categories = MapCategories(category.Categories, songMap); cList.Add(c); } foreach (Model.InternalVendorInventory.Category c in cList) { SortCategory(c); } return(cList); }
private static void SortCategory(Model.InternalVendorInventory.Category category) { category.Songs.Sort(); foreach (Model.InternalVendorInventory.Category c in category.Categories) { SortCategory(c); } }