为什么我的项目中缺少ObservableCollection的所有方法?

时间:2015-03-19 14:36:31

标签: c# .net windows windows-store-apps observablecollection

似乎缺少ObservableCollection的方法和属性。我很困惑。

以下是旧项目的屏幕截图:enter image description here

现在是我目前的项目: enter image description here

这是两个项目中的using语句:

using System.Collections.ObjectModel;

他们是否更新了SDK并删除了所有方法,或者我使用了错误的ObservableCollection?我不知道发生了什么。

3 个答案:

答案 0 :(得分:3)

我认为你错过了LINQ扩展。尝试添加:

using System.Linq;

答案 1 :(得分:3)

当您在方法enter image description here上看到向下箭头时,表示该方法不是该类的一部分,而是“Extension Method”。扩展方法基本上是来自其他类的静态方法,它们就像您正在使用的类上的实例方法一样。

列表中的大部分内容都是将using System.Linq;添加到文件顶部。这会导致System.Linq.Enumerable中的所有扩展方法显示在列表中,这会为您提供All<>Any<>等内容。但是AddRange<>不是System.Linq中的标准扩展方法,可能会被您正在使用的其他第三方库(或.NET中我不知道的某些命名空间)添加。

找出从哪里获得AddRange<>的最简单方法是转到它适用的项目,然后右键单击代码中的方法,您应该看到“转到定义”或类似的< sup> 1 ,它应该带您到声明该扩展方法的文件的文件或元数据视图。

1:我使用Resharper,它改变了我的右键菜单,所以我不知道确切的措辞

答案 2 :(得分:2)

“缺失”方法是LINQ扩展方法。将LINQ添加到包含的库列表中。