C# 如何在收集中使用托利斯特<;T>;

C# 如何在收集中使用托利斯特<;T>;,c#,.net,linq,C#,.net,Linq,指示类集合在扩展部分中具有方法ToList() 如何使用此方法?请确保您有一个对System.Core.dll的引用,并在C#文件的顶部添加using System.Linq 您可以在以下列表中看到这一点: 另外,由于声明是一个扩展方法(this IEnumerable source),您必须使用using语句来引用它,因为它是在不同的类型(Enumerable)上定义的。您可以在它的实例上调用ToList() myCollection.ToList() 可用于实现IEnumerable的所有

指示类
集合
在扩展部分中具有方法
ToList()


如何使用此方法?

请确保您有一个对
System.Core.dll
的引用,并在C#文件的顶部添加
using System.Linq

您可以在以下列表中看到这一点:

另外,由于声明是一个扩展方法(
this IEnumerable source
),您必须使用using语句来引用它,因为它是在不同的类型(
Enumerable
)上定义的。

您可以在它的实例上调用
ToList()

myCollection.ToList()
可用于实现
IEnumerable
的所有类型的扩展方法


这需要在cs文件中使用System.Linq
,以及对
System.Core
的引用,在当前版本的VS中,当目标为.net 3.5或更高版本时,默认情况下会添加这两个引用。

将其添加到文件的顶部

using System.Linq;

ToList
方法是在
System.Linq
命名空间中定义的扩展方法,因此要使用该方法,必须在
System.Linq
中包含using语句。一旦您这样做了,它就简单到了
yourCollection.ToList()

这个文档有点误导。类型
集合
没有直接使用此方法。相反,它被定义为
System.Linq.Enumerable
上的扩展方法。使用
系统的
指令添加

using System.Linq; 

...

Collection<T> col = ...;
List<T> list = col.ToList();
使用System.Linq;
...
集合col=。。。;
List=col.ToList();

ToList()是一种扩展方法。导入和引用了正确的命名空间(System.Linq)吗?

有时命令行项目中没有对System.Data.Linq的引用,因此即使添加using语句,也无法对项目进行intellisense或正确编译。也就是说,当你喜欢的时候

Datacontext dc = new DataContext();
dc.Tablename.W
当你开始输入W时,你希望看到“where”,但你没有。添加对项目的引用可修复此问题

打开项目中的“引用”文件夹。查找对System.Data.Linq的引用。如果没有,右键单击References文件夹,选择“添加引用…”,然后单击.NET选项卡并查找System.Data.Linq,选择它并单击OK。现在一切都应该正常了


我使用Where作为例子,因为我总是在那里发现它,但是ToList()等是相同的。

扩展方法:使用System添加
。Linq
ToList()是一个Linq扩展方法,添加
使用System.Linq
可以使用它。其他人已经指出了如何将ToList扩展方法纳入范围,但更大的问题是,你为什么要将收藏列入一个列表。集合实现IList。也许最好只使用IList,而不是增加将对象指针复制到第二个列表的内存开销。
Datacontext dc = new DataContext();
dc.Tablename.W