C# 递归模型定义。赋值

https://blog.csdn.net/wumiju/article/details/80429412

 public partial class ProductTypeModel:DbEntityModels.ProductType
    {
        public List<ProductTypeModel> SubProductTypeInfo { get; set; }

        
    }

  public IActionResult ListProductType()
        {
            List<Models.ProductTypeModel> listType = new List<Models.ProductTypeModel>();
          var  info = typeBll.Query(x => x.IsDelete == false && x.Fid == 0 && x.Depth == 0);
            foreach (var item in info)
            {
                listType.Add(new Models.ProductTypeModel()
                {
                    ID = item.ID,
                    IsDelete = item.IsDelete,
                    Depth = item.Depth,
                    CreateDate = item.CreateDate,
                    Fid = item.Fid,
                    Remark = item.Remark,
                    Sort = item.Sort,
                    TypeName = item.TypeName,
                    SubProductTypeInfo= subListProductType(item.ID)
                });
            }
            return Json(new { data = listType });
        }

        public List<Models.ProductTypeModel> subListProductType(long fid)
        {
            var dbProductTypeInfo = typeBll.Query(x => x.IsDelete == false && x.Fid == fid);
            List<Models.ProductTypeModel> listType = new List<Models.ProductTypeModel>();
            foreach (var item in dbProductTypeInfo)
            {
                listType.Add(new Models.ProductTypeModel()
                {
                    ID = item.ID,
                    IsDelete = item.IsDelete,
                    Depth = item.Depth,
                    CreateDate = item.CreateDate,
                    Fid = item.Fid,
                    Remark = item.Remark,
                    Sort = item.Sort,
                    TypeName = item.TypeName,
                    SubProductTypeInfo = subListProductType(item.ID)
                });
            }
            return listType;


        }

posted @ 2018-09-24 21:52  LuoCore  阅读(365)  评论(0编辑  收藏  举报