【发布时间】:2016-11-03 16:00:08
【问题描述】:
我正在构建一个 WPF 项目并实施了 Prism。
我有一个 DAL,其中有一个库来处理与数据库的连接,称为 Persistence,该库使用 EntityFramework 并有一些实体。
此外,我现在有一些 DomainModels - 我该如何处理给定的场景:
我有 2 个 ViewModel,它们都引用了 ActiveUser(当前登录的那个)作为 IUser 类型的 DomainModel,我们通过名为 IUserService 的服务获得。
假设这个IUser 有一个名为Funds 的属性,如果ViewModel1 更改IUser - 我如何通知ViewModel2 它有更改IUser 和Funds 应该更新所以View 显示的是正确的数据。
我是否在我的模型和视图模型中实现
INotifyPropertyChanged,然后每个ViewModel都应该监听PropertyChanged事件,并根据已更改的属性进行相应更新? (不过我觉得这种丑)我是否使用
EventAggregator并发布/订阅事件,从我的 DomainModels(?) 发布和订阅我的 ViewModels?我是否实现了类似
PropertyObserver<TPropertySource> : IWeakEventListener类的东西?
谢谢
【问题讨论】:
-
Iuser 实例是单例吗?
-
@SatyajitMohanty 不,不是
标签: wpf prism inotifypropertychanged eventaggregator