【问题标题】:Add custom abstract base class between EntityObject and generated classes in Entity Framework在 EntityObject 和 Entity Framework 中生成的类之间添加自定义抽象基类
【发布时间】:2010-02-10 20:16:58
【问题描述】:

我已经生成了一个 EDMX 项目,并设置了我的数据实体类。它们都继承自 System.Data.Object.DataClasses.EntityObject。我想做的是有另一个继承自EntityObject的抽象类,然后我的数据实体类继承自那个新类。

最好的方法是什么?

感谢您的帮助。

【问题讨论】:

  • 你做继承而不是像实现部分类这样简单的事情有什么原因吗?
  • 我正在实现部分类。原因是我通过 WCF 调用传递对象,并且我想将这些对象类型中的任何一个传递到同一个调用中,但它对“EntityObject”的限制更大。抽象类是这样做的一种方式,因为接口不能被序列化。

标签: entity-framework


【解决方案1】:

您考虑删除 EntityObject 是对的,EF 类的工件不应该通过网络暴露出来。

请,请,请使用DTO pattern 用于通过电线传递的对象。

如果您创建新的 DTO 类(手动或使用 T4 模板)并使用 AutoMapper 之类的东西来回映射数据。

序列化的有效载荷将更加简单且可重用。

【讨论】:

  • 我明白了;传递抽象类只能传递该类中定义的参数,而不会传递其余数据。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-11-25
  • 1970-01-01
  • 1970-01-01
  • 2020-03-25
  • 2018-10-04
  • 1970-01-01
  • 2016-10-26
相关资源
最近更新 更多