private static void AddItemToHierarchy(int hierarchyIndentationNumber, DataHierarchyItem item) { switch (hierarchyIndentationNumber) { case 0: GEDCOMDataItems.Add(item); break; case 1: GEDCOMDataItems.Last().Items.Add(item); break; case 2: GEDCOMDataItems.Last().Items.Last().Items.Add(item); break; case 3: GEDCOMDataItems.Last().Items.Last().Items.Last().Items.Add(item); break; case 4: GEDCOMDataItems.Last().Items.Last().Items.Last().Items.Last().Items.Add(item); break; } }
private static void InitializeDataHierarchy(string file) { ValidateFile(file); GEDCOMDataItems = new List<DataHierarchyItem>(); foreach (var currentLine in File.ReadLines(file)) { var hierarchyIndentationNumber = GetHierarchyNumber(currentLine); var currentHierarchyItem = new DataHierarchyItem(); currentHierarchyItem.Value = currentLine.Substring(2); AddItemToHierarchy(hierarchyIndentationNumber, currentHierarchyItem); } }