应该放入 Model 的内容也可以放入 View-Model 中,例如:Public Properties、IDataErroInfo 和 INotifyPropertyChanged,那么实际上应该放什么进入 Model?
业务数据 + 业务逻辑 + 业务规则
应用程序用户界面
是对模型的包装,易于使用最少的代码/工作量由视图进行阅读/绑定。
IDataErrorInfo
- 应该放在视图模型中INotifyPropertyChanged
- 应该放在视图模型中。如果必要,也可以放在模型中(但不建议)
INotifyPropertyChanged
是UI关注的事情。我永远不会在模型中实现INPC。模型需要尽可能简洁和独立。例如,“银行账户”永远不会有通知任何数据更改的责任。 - Peter Ritchie