系统中的聚合和ToArray函数.数组不工作
本文关键字:函数 数组 工作 ToArray 系统 | 更新日期: 2023-09-27 18:03:17
我有两个错误:
下面是我的代码:"系统。数组'没有包含'聚合'的定义,没有扩展方法"Aggregate"接受类型的第一个参数的系统。Array'可以找到(您是否缺少using指令或汇编参考?)
'System.Collections.Generic.IEnumerable<object[]>'不包含一个'ToArray'的定义,不接受'ToArray'扩展方法类型的第一个参数'System.Collections.Generic.IEnumerable<object[]>'无法找到(您是否缺少using指令或汇编引用?)
/*
* Get all the possible permutations
*/
public static IEnumerable<object[]> CartesianProduct(params object[][] inputs)
{
//ERROR: Function Aggregate is not recognized
return inputs.Aggregate(
(IEnumerable<object[]>)new object[][] { new object[0] },
(soFar, input) =>
from prevProductItem in soFar
from item in input
select prevProductItem.Concat(new object[] { item }).ToArray());
}
public void test()
{
//Get all the posible permutations between parents values.
var cartesianProduct = CartesianProduct(parentsValues);
object[][] producto = cartesianProduct.ToArray();
//ERROR: Function ToArray is not recognized
}
你错过了
using System.Linq;
放在文件的顶部。如果没有这个,c#编译器就不知道在哪里可以找到你想要使用的LINQ扩展。
在。cs文件的顶部添加using System.Linq;