使用Linq扩展数组类
本文关键字:数组 扩展 Linq 使用 | 更新日期: 2023-09-27 17:50:35
我正在尝试从Enum
构建SelectList
。
为什么Linq
的扩展方法不能在Array
上使用?
var values = Enum.GetValues(typeof(MyEnum));
var test = values.Select(x => x); // compile error
但是我可以这样写,它会编译…
var test = from Enum e in values select new { e };
我通常不使用这种风格的语法,所以我不是很熟悉它,但不是上面本质上相同的lambda查询不编译?
使用OfType方法获取可以使用LINQ查询的IEnumerable<T>
:
var values = Enum.GetValues(typeof(MyEnum));
var test = values.OfType<int>().Select(x => x);