我有以下情况:
我有一个MySQL数据库。我想从MySQL表中读取数据并将其存储到ObservableCollection
中。我应该如何在MVVM中做到这一点?
我应该在Model和ViewModel旁边创建一个额外的类来处理填充ObservableCollection
等内容吗?
我会创建一个名为MySQLClass
的额外类,例如。
MySQLClass
处理MySQL连接和查询。然后它填充ObservableCollection
..但由于属性,MySQLClass
需要了解模型。
这是一个问题吗?有没有正确的方法来做到这一点?
答案 0 :(得分:1)
仅仅因为您使用MVVM作为架构模式,并不意味着您不能使用多层架构(n-tire架构)或存储库和/或服务等模式。
此外"型号"并不意味着"数据对象",MVVM中的模型是一个层,而不是一个对象。 View和ViewModel也是如此。部分"模型"在MVVM中还包括数据访问和持久性,但这并不意味着您必须将数据访问权限放入您的实体中。
通常,您将拥有包含字段,方法和业务逻辑的模型(对象)。您将拥有存储库来访问,查询和保存数据和服务"协调多个模型或其他服务之间的交互。