Model转为List<>问题


在练习的时候,我遇到个问题,具体描述如下,麻烦大家帮忙看看如何解决?

实体类Model如下:

using Prism.Mvvm;
using System.Collections.Generic;

namespace HY.Client.MainModule.Models
{
    public class TreeMenuModel : BindableBase
    {
        public string TreeMenuIcon { get; set; }

        public string TreeMenuHeader { get; set; }

        public string TargetView { get; set; }

        private bool isExpanded;

        public bool IsExpanded
        {
            get => isExpanded;
            set => SetProperty(ref isExpanded, value);
        }

        public List Children { get; set; }
    }
}

以下ViewModel中出现报错:

1、构造函数内的 **this.FillMenus(TreeMenus, 0);**,提示:无法从“HY.Client.MainModule.Models.TreeMenuModel”转换为“System.Collections.Generic.List”  ;

2、ViewModel中因为TreeMenus是属性而不是List类型,因此倒数第二行的**TreeMenus.Add(model);**也报错,无Add()方法

using HY.Client.Entity;
using HY.Client.MainModule.Models;
using Prism.Commands;
using Prism.Mvvm;
using Prism.Regions;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Input;

namespace HY.Client.MainModule.ViewModels
{
    public class TreeMenuViewModel : BindableBase
    {
        private TreeMenuModel treeMenus;

        public TreeMenuModel TreeMenus
        {
            get => treeMenus;
            set => SetProperty(ref treeMenus, value);
        }

        //列表数据通过递归转为树形结构
        private List origMenus = null;

        private IRegionManager _regionManager;

        public TreeMenuViewModel(IRegionManager regionManager)
        {
            TreeMenus = new TreeMenuModel();
            _regionManager = regionManager;
            origMenus = GlobalEntity.CurrentUserInfo.Menus;
            this.FillMenus(TreeMenus, 0);
        }



        /// 
        /// 递归把树菜单表转为树结构
        /// 

        private void FillMenus(List menus, int parentId)
        {
            var sub = origMenus.Where(m => m.ParentId == parentId); //.OrderBy(o => o.Index)
            if (sub.Count() > 0)
            {
                foreach (var item in sub)
                {
                    TreeMenuModel model = new TreeMenuModel()
                    {
                        TreeMenuHeader = item.TreeMenuHeader,
                        TreeMenuIcon = item.TreeMenuIcon,
                        TargetView = item.TargetView
                    };
                    TreeMenus.Add(model);
                    FillMenus(model.Children = new List(), item.TreeMenuId);
                }
            }
        }
    }
}

FillMenus(model.Children = new List(), item.TreeMenuId);

这里,你传入的第一个参数,怎么是一条语句,你想干嘛