private Lazy <int> GetDeep() { if (null != Childrens && Childrens.Count == 0) { return(new Lazy <int>(() => 1)); } var l = new Lazy <int>(() => 1 + (Childrens?.OrderByDescending(x => x.Deep.Value)?.Select(x => x.Deep.Value)?.FirstOrDefault() ?? 0)); return(l); }