Здесь мой запрос LINQ для получения записи в меню таблицы с условием: parentID == 0 (получить корневое меню) и ID! = (Список parentID) (то есть список родительских идентификаторов является идентификатором записи меню, имеющей дочерний элемент) , я просто хочу загрузить все записи, включая корневое меню, в котором нет дочерней записи и дочерней записи:
List<Menu> menus = MenuDAO.Instance.GetAll(); // Get All Record in Menu Table
var parentID = (from p in menus where p.ParentID != 0 select new {p.ParentID}).Distinct(); // Get unique ParentID in Menu Table
List<int> numParentID = new List<int>();
foreach (var a in parentID)
{
numParentID.Add(a.ParentID);
} // assign to a list <int>
this.ddlMenu.DataSource = from m1 in menus
where !(numParentID).Contains((int)m1.ID) && m1.ParentID == 0
select new { m1.ID, m1.Name };
this.ddlMenu.Databind();
И я запускаю этот код, я отображаю записи, которые не имеют детей, не отображают запись детей. Кто-нибудь, помогите мне это исправить. Мое новое в LINQ, большое спасибо.
Результат, который я ожидаю получить здесь: список записей, которые не имеют дочерних элементов , моя схема таблицы меню: ID, имя, порядок, ParentID.