2013-07-11 152 views
4
public static T[] ToArray<T>(IEnumerable<T> e) { 
    return e.ToArray(); 
} 

我得到以下編譯器錯誤:爲什麼我不能在通用IEnumerable對象上調用ToArray?

Error 1 System.Collections.Generic.IEnumerable<T> does not contain a definition for ToArray and no extension method ToArray accepting a first argument of type System.Collections.Generic.IEnumerable<T> could be found (are you missing a using directive or an assembly reference?

MSDN reference列出了該方法。這裏有什麼問題?

+1

你是否缺少using指令? –

+3

您是否在文件中添加了「使用System.Linq;'命名空間? – Oded

+0

當我還沒有使用任何linq時,我不小心通過使用「刪除未使用的用法」來刪除我的Linq引用。只是要留意一下。 – Gray

回答

15

假設你在.NET 3.5或更高版本,則需要將using指令添加到您的代碼文件的頂部:

using System.Linq; 

你還需要有一個裝配參考System.Core(雖然這應該在Visual Studio項目中默認使用)。

相關問題