場景:
在做用戶反饋的時候,需要查詢該用戶反饋表中的數據,有父子關系。表字段如下:
直接上方法:
/// <summary> /// 遞歸查找父類的子類 /// </summary> /// <param name="list">反饋消息列表數據</param> /// <param name="UserName">反饋人</param> /// <param name="pid">父類ID</param> /// <returns>用戶的反饋列表數據</returns> public List<DAL.Feedback> GetFeedBack(List<DAL.Feedback> list,string UserName,int pid=0)
{ List<DAL.Feedback> lst = new List<Feedback>(); if (list.Where(t=>t.FeedbackParentID==pid&&t.FInitiator== UserName).Count()>0) { foreach (var item in list.Where(t=>t.FeedbackParentID==pid&&t.FInitiator==UserName).ToList()) { lst.Add(item); lst.AddRange(GetFeedBack(list, UserName, (int)item.FID)); } } return lst; }
調用方法:
List<DAL.Feedback> list = Entity.Feedback.AsNoTracking().AsQueryable().ToList(); List<DAL.Feedback> FeedbackList= GetFeedBack(list,"測試");
效果圖:
也是借鑒網友的,地址:https://blog.csdn.net/xinyanan1992/article/details/52414336