public void Add(TreeDimensionDto treeDimension) { if (treeDimension.ParentId == null) { RootDimensions.Add(treeDimension); } else { var parentDimension = GetDimensionDto(treeDimension.ParentId.Value); if (parentDimension.Children == null) { parentDimension.Children = new List <TreeDimensionDto>(); } parentDimension.Children.Add(treeDimension); } }
public bool IsRoot(int id) { return(RootDimensions.Select(d => d.Id).Contains(id)); }
public TreeDimensionDto GetDimensionDto(int id) { return(RootDimensions .Select(rootDimension => rootDimension.GetDimensionDto(id)) .SingleOrDefault(childDimensionDto => childDimensionDto != null)); }