Prism 6 与旧版本的兼容性

Prism 6 compatibility with older versions

我有一个使用 Prism 5 (WPF) 的主项目的解决方案。该解决方案还包含更多属于 Prism 模块的项目。

现在我必须创建一个新模块,我想知道我是否只能在该模块中使用 Prism 6,并且它会与 Prism 5 主项目兼容,或者我是否需要继续使用 Prism 5模块(或将整个解决方案升级到 Prism 6,这是一项非常大的工作)。

谢谢

您必须坚持使用 Prism 5 或将所有内容升级到 Prism 6。这些版本之间存在一些重大变化:

  • 删除了在 Prism 5
  • 中标记为 "Obsolete" 的所有类型
  • 删除了 IView 界面
  • 更改命名空间以删除 Microsoft 命名空间
  • 移动了许多类型以更好地组织并尽可能多地进入单个便携式 Class 库
  • ViewModelLocator 命名约定更改:[Name]View 现在需要 [Name]ViewModel。不再是 [Name]ViewViewModel

来源:https://github.com/PrismLibrary/Prism/blob/master/README.md

仅名称空间更改就足以 'break' 您的应用程序。您现在将有 2 个不同的实例,例如EventAggregator(因为它们位于不同的命名空间中)。