Недавно я написал фрагмент кода на C # с использованием лямбда-выражения:
var dynMenu = new List<MenuItem>();
// some code to add menu items to dynMenu
if (!dynMenu.Any(x => x.Text == controller))
{
// do something
}
Проходя по моему коду, я обнаружил, что у каждого MenuItem есть свойство ChildItems, которое имеет тип MenuItemCollection. Заинтригованный, я подумал, что заменил бы свой Список MenuItem этой коллекцией MenuItem.
После изменения первой строки на:
var dynMenu = new MenuItemCollection();
Я заметил, что этот тип MenuItemCollection не имеет методов расширения, таких как «Any <>», «All <>», «First <>» и т. Д. И т. Д., Что я нахожу странным.
Есть ли способ использовать здесь лямбда-выражения?
Должен ли я просто вернуться к использованию "List << \ MenuItem>"?