2016-07-30 102 views
1

鑑於以下聲明C#採取運營商

int[] numbers = { 0, 1, 2, 3 }; 

我注意到,2015年VS .NET的4.6.1允許以下取前三個數字

IEnumerable<int> firstThree = System.Linq.Enumerable.Take(numbers, 3); 

但是,它不允許以下

IEnumerable<int> firstThree = numbers.Take(3); 

我是C#的新手,無法理解爲什麼呼叫未解析爲extensi on方法。

+0

我最後一次檢查VS打開之後自動爲您命名空間:'使用系統; using System.Collections.Generic;使用System.Linq的 ; using System.Text; 使用System.Threading.Tasks;' – s952163

回答

5

Take是一種擴展方法,可以在名稱空間下找到System.Linq

你只需要包括你的文件命名空間:

using System.Linq; 

,然後你就可以使用擴展方法。

+0

好抓。謝謝 – user3701522