List递归获取所有上级和下级:

  • binGe博客
  • 开发笔记
  • 2024/1/25 16:59:31
  • 人已阅读
简介
List递归获取所有上级和下级:

#region 获取所有下级:非接口
        private static IEnumerable<Album_ProductTagTreeDto> GetSons(IList<Album_ProductTagTreeDto> list, long Fid)
        {
            var query = list.Where(p => p.ID == Fid).ToList();
            var list2 = query.Concat(GetSonList(list, Fid));
            return list2;
        }

        private static IEnumerable<Album_ProductTagTreeDto> GetSonList(IList<Album_ProductTagTreeDto> list, long Fid)
        {
            var query = list.Where(p => p.ParentID == Fid).ToList();
            return query.ToList().Concat(query.ToList().SelectMany(t => GetSonList(list, t.ID)));
        }
        #endregion
                
        #region 获取所有上级:非接口
        private static IEnumerable<Album_ProductTagTreeDto> GetFatherList(IList<Album_ProductTagTreeDto> list, long Id)
        {
            var query = list.Where(p => p.ID == Id).ToList();
            return query.ToList().Concat(query.ToList().SelectMany(t => GetFatherList(list, t.ParentID)));
        }
        #endregion

 

文章评论

评论
  • 消灭零回复
Top