随机示例:
ConfigurationElementCollection
Run Code Online (Sandbox Code Playgroud)
.Net有很多这些WhateverCollection没有实现的IEnumerable<T>小类,这意味着我不能将Linq用于开箱即用的对象.甚至在Linq之前,你会认为他们会想要使用泛型(我相信它已经在C#2中一直被引入)
似乎我一直遇到这些讨厌的小集合类型.有一些技术原因吗?
答案在问题标题中:"命名集合".在泛型可用之前,您必须使集合类型安全的方式是什么.代码中有很多可以追溯到.NET 1.x,尤其是Winforms.没有合理的方法可以使用泛型来重写它们,这会破坏过多的现有代码.
因此,命名集合类型是类型安全的,但rub是System.Collections.IEnumerator.Current,类型为Object的属性.您可以使用OfType()或Cast()来Linqify这些集合.
| 归档时间: |
|
| 查看次数: |
725 次 |
| 最近记录: |