我想为我的 MVVM 概念使用可移植类项目(在 WPF 和 Silverlight 之间共享 dll)。
对于 WPF,我想以 Dot.Net 4.0 为目标,而 Silverlight 以版本 5 为目标。
遗憾的是,可移植项目不支持我的 View 模型的一些关键功能,例如 ObservableCollection。 奇怪的是,两个独立版本(Dot.Net 4.0 和 SL 5)都支持 ObservableCollection。
有人知道为什么我不能使用这个集合吗?当我切换到 Dot.Net 4.5 时它可用。
最佳答案
这只是因为 .NET 4.0 是第一个支持可移植库的 .NET 版本,而我们没有时间使“ViewModel”类型(ICommand、ObservableCollection 等)可移植。
技术原因是这些类型位于 Silverlight 上的 System.Windows.dll 中,但它们位于 .NET Framework 中的 WPF 程序集(我认为是 PresentationCore.dll)中。在 .NET 4.5 中,我们向 .NET Framework 添加了一个 System.Windows.dll 版本,并将类型转发到正确的位置。
关于c# - 便携类 4.0 : Missing Features,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23109567/