我想构建一个 WPF/Prism 应用程序,其中每个顶级窗口都在其自己的 UI 线程中。这是相当直截了当的。我使用 Unity 作为我的 DI 容器,并希望创建容器层次结构。在最简单的情况下,根容器将位于应用程序级别,每个窗口都有一个子容器。这是可取的,因为每个窗口都可以有自己的共享对象,这些对象由子容器限定。
我希望每个窗口都有自己的 Prism 区域管理器,这样我就不会有任何跨线程问题,因为每个窗口都有自己的 UI 线程。我看到 Region 和 RegionManager 使用 ServiceLocator.Current 单例。这是一个问题,因为我希望 RegionManager 使用它所限定的容器,而静态单例是不可能的。你们中是否有人遇到过这个问题,您将如何解决它?
谢谢!