c# - 数据绑定(bind)到 EF 实体或 ViewModel

标签 c# wpf entity-framework data-binding mvvm

我有一个带有 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/

相关文章:

c# - 如何将一些文本放入 C# 控制台而不是用户输入?

c# - 标签不会实时变化

c# - slider 绑定(bind)导致性能显着下降

c# - 将绑定(bind)属性传递给 ViewModel

wpf - MVVM 如何将命令绑定(bind)到 ContextMenu

c# - 只读 gridview 中的列

c# - 满足此要求的 WPF 控件或方法是什么?

c# - 在 C# 中的运行时设置 Entity Framework 连接字符串

asp.net - 数据直接绑定(bind)到商店查询

c# - Linq 选择表映射( Entity Framework )