使用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查询不编译?

使用Linq扩展数组类

使用OfType方法获取可以使用LINQ查询的IEnumerable<T>:

var values = Enum.GetValues(typeof(MyEnum));
var test = values.OfType<int>().Select(x => x);