首先很惭愧自己经过这么长时间的奋斗,还是没能掌握MVVM模式的精髓,不禁要问。
我搜索并搜索了有关 MVVM 的信息,但对我来说(似乎)清楚的层只是 View 和 ViewModel 层。
所以这是我到现在为止通过一些小例子所掌握的内容,仅供参考,我正在使用 MySQL 查询来获取我的数据:
模型
我不清楚在这里做什么。我有这个 Employee.cs 类:
class Employee
{
public string Id { get; set; }
public string Name { get; set; }
public string Gender { get; set; }
}
我的问题:我应该在 EmployeeModel 类中进行查询以从 MySQL 数据库中获取数据吗?我读到这个答案,数据访问层与 MVVM 的模型不同,而且我可以使用存储库从我的数据访问层请求员工列表。
根据那个答案,它应该是这样的:
- Employee.cs [对象属性定义],
- EmployeeDataAccess.cs [负责从 MySQL 获取员工数据]
- EmployeeRepository.cs [由 EmployeeModel 调用以从 DA 获取员工数据]
- EmployeeModel.cs [我处理诸如验证等业务逻辑并在与 Employee.cs 几乎相同的属性上使用 INotifyPropertyChanged]
- EmployeeViewModel.cs [EmployeeView 的数据上下文]
- EmployeeView.cs [XAML]
所有这些都是为了一页员工列表,我做错了吗?
很抱歉这个问题很长,如果我说错了什么,我会很乐意解决它。
我现在真的一无所知,所以非常感谢任何新的观点。