我有一个数据库,它通过我的模型(自己的线程)与网络服务通信并公开数据对象。我的 UI 应用程序由不同的 View 和 View 模型以及自定义控件组成。我正在使用 ServiceProvider (IServiceProvider) 访问模型并将事件路由到 UI 线程。 ViewModel 之间的通信由 Messenger 处理。
这条路要走吗?
我也想知道构造数据对象的最佳方式是什么
目前我有具有层次结构但不支持 INotifyProperty 的数据对象,尽 pipe 列表是 ObservableCollection 类型。我无法对属性实现 notifypropertychange。
我想知道让它们对 MVVM 友好的最佳方法。实现部分类并添加所有必要的属性或命令或包装所有 DataObjects 并保持模型列表和 MVVM 列表同步。
所有的想法和想法都会受到赞赏。
最佳答案
严格实现 MVVM 意味着您应该创建 ViewModel 类,以公开将使用 View 的所有数据对象(您的模型)—— View 不应直接访问模型。
在此之后,您将完全控制您的 ViewModel,并且您将能够实现 INotifyPropertyChange 事件并在每次更改通知或特定操作时将 ViewModel 与模型同步。
关于c# - 使用 MVVM 模式访问模型的最佳实践是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2326421/