.net Can';无法在System.Collections.ObjectModel中找到ObservableCollection

.net Can';无法在System.Collections.ObjectModel中找到ObservableCollection,.net,wpf,observablecollection,.net,Wpf,Observablecollection,两个WPF项目,同一台计算机,浏览集合.ObjectModel 一个人有可观察的收集并说 // Type: System.Collections.ObjectModel.ObservableCollection`1 // Assembly: System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 // Assembly location: C:\Program Files\Reference Assemb

两个WPF项目,同一台计算机,浏览集合.ObjectModel

一个人有可观察的收集并说

// Type: System.Collections.ObjectModel.ObservableCollection`1
// Assembly: System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
// Assembly location: C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.dll
另一个(从一个3.0项目升级而来)没有,并且说

// Type: System.Collections.ObjectModel.Collection`1
// Assembly: mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
// Assembly location: C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorlib.dll

为什么对使用System.Collections.ObjectModel的第二次引用如此不同?

请查看系统程序集“v4.0\Profile\Client\System.dll”与“Framework\v2.0.50727\mscorlib.dll”的末尾


该项目已设置为使用客户端配置文件。进入项目属性,选择完整的.Net 4配置文件。

查看系统程序集“v4.0\profile\Client\System.dll”与“Framework\v2.0.50727\mscorlib.dll”的末尾


该项目已设置为使用客户端配置文件。进入项目属性,选择完整的.Net 4配置文件。

您看到的是两种不同的类型。不同程序集中的类型可以位于同一命名空间中


由于升级的项目不包含对System.dll程序集的引用(在3.0中,它位于Windowsbase.dll中),因此它将不具有ObservableCollection。如果添加对该程序集的引用,则可以访问该集合。

您将看到两种不同的类型。不同程序集中的类型可以位于同一命名空间中


由于升级的项目不包含对System.dll程序集的引用(在3.0中,它位于Windowsbase.dll中),因此它将不具有ObservableCollection。如果添加对该程序集的引用,则可以访问该集合。

我有多个项目。主项目设置为.net 4,但引用的项目仍然是.net 3.5,它引用的是2.0 mscorlib。

我有多个项目。主项目设置为.net 4,但引用的项目仍然是.net 3.5,它引用的是2.0 mscorlib。

具有客户端配置文件的项目有可观察的集合,而另一个没有。尝试将失败的项目移动到客户端配置文件,但无效。具有客户端配置文件的项目具有可观察的集合,而另一个没有。尝试将失败的项目移动到客户端配置文件,但没有帮助。