【问题标题】:viewmodel classes generation视图模型类生成
【发布时间】:2011-08-21 17:03:08
【问题描述】:

我在 Silverlight 项目中使用 EF 4.1,出于一些原因,我直接使用 WCF 而不是使用 RIA 服务。现在,由 EF 生成的模型实体可附加/可分离到数据上下文,并且感觉在不同的层之间传递并不是一个好主意,尤其是传递到视图。

我已经阅读了一些内容,并且我知道我可以创建自己的类(Q1。这些类是否称为 ViewModel 类?)它们主要具有自动属性以及显示和验证所需的一些逻辑,并且我可以使用库就像自动映射器在 EF 实体和我的(视图模型??)类之间来回映射。

我想知道是否有一个库/实用程序可以用来从 EF 实体生成这些类?我有很多实体,它们的许多属性可以在开发过程中发生变化,我讨厌手动创建这些类并在我必须更改 EF 模型实体时更改/维护它们。

我希望我的要求很清楚;如果不让我知道,我会尝试详细说明和/或发布一些示例。

谢谢

【问题讨论】:

    标签: c# silverlight mvvm code-generation viewmodel


    【解决方案1】:

    ViewModel 是“视图的模型”。

    您的 ViewModel 应该公开实际的实体对象,而不是单独的属性。例如。如果您有一个具有 Forename、Surname 和 Age 属性的 Customer 实体,您将拥有 Customer SelectedCustomer 属性或 List<Customer> AllCustomers 属性,而不是 Forename、Surname、Age 等。

    您将 View 的 DataContext 设置为所需 ViewModel 的实例,并使用绑定来查看/更新 ViewModel 的各种属性,在本例中为 Customer.Forename、Customer.Surname 等。

    ViewModel 将实现INotifyPropertyChanged 接口,以在其任何属性更改时引发消息,以通知视图任何更改并更新视图。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-21
      • 1970-01-01
      • 2013-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多