我不确定ASP.Net的ControlCollection是如何工作的,所以也许有人可以为我阐明一些。为什么Controls集合不提供所有IEnumerable方法?
我最近发现了这个扩展方法和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”);' – 2010-07-21 18:22:32