我有一个带有 MVVM、 Entity Framework 和 WCF 服务的 WPF 应用程序。
我创建了自我跟踪实体,因此实体类已经实现了 INotifyPropertyChanged。
我应该直接对这些类的属性进行数据绑定(bind)(例如,在我的主 ViewModel 中具有 ObservableCollection<Author> Authors
属性)还是应该创建具有相同属性的 ViewModel(并且在主 ViewModel 中具有 ObservableCollection<AuthorViewModel> Authors
属性)?
另一个问题,与标题无关,但很好。
在使用 STE 之前,我为我的实体使用 POCO 类,但它们不可序列化,并且 WCF 服务遇到了问题。有简单的解决方案吗?
最佳答案
推荐的答案是使用 ObservableCollection<AuthorViewModel>
,主要是因为如果需要实现任何额外的特定于 UI 的逻辑,那么该逻辑应该在 ViewModel 中,而不是在 Model 中。根据我的经验,将模型包装在 View 模型中总是更干净,即使只是为了保持一致性。
关于c# - 数据绑定(bind)到 EF 实体或 ViewModel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9820617/