Я не уверен, как работает ControlCollection ASP.Net, поэтому, возможно, кто-то может пролить свет на это для меня.
Недавно я открыл для себя волшебство, заключающееся в методах расширения и Linq. Что ж, мне было очень грустно обнаружить, что это недопустимый синтаксис.
var c=Controls.Where(x => x.ID=="Some ID").SingleOrDefault();
Однако из того, что я могу сказать, Controls
реализует интерфейс IEnumerable
, который предоставляет такие методы, так что же дает? Почему это просто не работает? По крайней мере, я нашел достойную работу для этой проблемы:
var list = (IEnumerable<Control>)Controls;
var this_item = list.Where(x => x.ID == "Some ID").SingleOrDefault();
list.SingleOrDefault(x => x.ID == "Some ID");
- person Yuriy Faktorovich   schedule 21.07.2010