上下文:
C#/ WPF Windows-Store应用程序使用SQLite在本地存储数据,并通过Web访问来下载数据。
应用程序:
数据必须从网上下载并映射到存储在本地SQLite数据库中的类。例如,在客户类: MVVM - 正确执行模型
[Table("Customer")]
class Customer{
[AutoIncrement, PrimaryKey, Unique]
public int Id {get;set;}
public string Name {get; set;}
…
}
类得到由不同的线程操作,所以在INotifyPropertyChanged的Customer类是一个坏主意。此外,多个客户应该通过GUI显示,因此ViewModel包含一个Customers列表。此外,客户必须通过多个属性进行扩展才能正确显示GUI。
问题:
什么是模型?客户?
我应该如何扩展客户的额外属性而不会搞乱客户类?
我应该在哪里存储客户在数据库中的业务逻辑,或者将数据从网络下载并映射到客户类?在模型中?
如果你的答案是客户是模型,它不应该包含任何逻辑,为什么MVVM模式说模型包含业务逻辑?