关于 LINQ 语法的一些小问题。我正在展平 IEnumerable<IEnumerable<T>>
与 SelectMany(x => x)
.
我的问题是 lambda 表达式 x => x
.它看起来有点难看。是否有一些我可以使用的静态“身份函数”对象而不是 x => x
?类似于 SelectMany(IdentityFunction)
?
最佳答案
除非我误解了这个问题,否则以下内容在 C# 4 中对我来说似乎工作正常:
public static class Defines
{
public static T Identity<T>(T pValue)
{
return pValue;
}
...
然后您可以在示例中执行以下操作:
var result =
enumerableOfEnumerables
.SelectMany(Defines.Identity);
除了在任何地方使用 Defines.Identity
外,您还可以使用看起来像 x => x
的 lambda。
关于c# - LINQ 身份函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1466689/