Tree.cs 597 B

123456789101112131415161718192021222324252627282930
  1. using System.Collections.Generic;
  2. namespace Masuit.Tools.Models;
  3. /// <summary>
  4. /// 代表树形结构的类
  5. /// </summary>
  6. /// <typeparam name="T"></typeparam>
  7. public class Tree<T> : ITreeChildren<Tree<T>>
  8. {
  9. public Tree(T value)
  10. {
  11. this.Value = value;
  12. }
  13. /// <summary>
  14. /// 代表当前节点的值
  15. /// </summary>
  16. public T Value { get; set; }
  17. /// <summary>
  18. /// 父节点
  19. /// </summary>
  20. public virtual T Parent { get; set; }
  21. /// <summary>
  22. /// 子级
  23. /// </summary>
  24. public virtual ICollection<Tree<T>> Children { get; set; }
  25. }