为什么我不能在通用IEnumerable对象上调用ToArray?
public static T[] ToArray(IEnumerable e) { return e.ToArray(); }
我收到以下编译器错误:
错误1
System.Collections.Generic.IEnumerable
不包含ToArray
的定义,也没有扩展方法ToArray
接受System.Collections.Generic.IEnumerable
类型的第一个参数(你是否缺少using指令)或汇编参考?
但是MSDN参考列出了这种方法。 这有什么不对?
假设您使用的是.NET 3.5或更高版本,则需要将using
指令添加到代码文件的顶部:
using System.Linq;
您还需要有一个System.Core
的程序集引用(尽管默认情况下这应该存在于Visual Studio项目中)。
你错过了using System.Linq;
在文件的顶部。
ToArray
是作为LINQ(语言集成查询)的一部分在IEnumerable
上实现的扩展方法,因此您必须使用它来使其工作。