/// <summary> /// Method to add items to a ALM customList /// </summary> /// <param name="oriCustomListNode">Original CustomListNode where will be add new items</param> /// <param name="currentCustomListNode">CustomListNode where the items are taken to save them to the original customList</param> /// <returns>Returns the message of the performed operations</returns> private string AddItemsToList(CustomizationListNode oriCustomListNode, CustomizationListNode currentCustomListNode) { string message = ""; for (int i = 0; i < oriCustomListNode.ChildrenCount; i++) { CustomizationListNode customGrandChild = null; List oriChildList = new List(); List currentChildList = new List(); oriChildList = oriCustomListNode.Children; currentChildList = currentCustomListNode.Children; //Get the original ChildListNode CustomizationListNode oriChildListNode = (CustomizationListNode)oriChildList[i + 1]; if (oriChildListNode.ChildrenCount > 0) //If the child has grandchildren { if (!ExistsCustomListNode(oriChildListNode.Name, currentCustomListNode)) //If the item doesn't exist { currentCustomListNode.AddChild(oriChildListNode.Name); customGrandChild = (CustomizationListNode)currentCustomListNode.get_Child(oriChildListNode.Name); AddItemsToList(oriChildListNode, customGrandChild); message += "\t \t \t \t \t Item '" + oriChildListNode.Name + "' added to List '" + oriCustomListNode.Name + "'" + Environment.NewLine; } } else // If child has no more children { if (!ExistsCustomListNode(oriChildListNode.Name, currentCustomListNode)) //If the item doesn't exist { currentCustomListNode.AddChild(oriChildListNode.Name); message += "\t \t \t \t \t Item '" + oriChildListNode.Name + "' added to List '" + oriCustomListNode.Name + "'" + Environment.NewLine; } } } return message; }