从C#中的Entity Framework生成的类派生

我创建了一个实体数据模型并从中生成了一个数据库。

其中一个实体称为Template

创建部分类以扩展Template的function可以正常工作。

如果我创建一个新类并尝试从Template派生,我会在实例化时遇到运行时exception:

Mapping and metadata information could not be found for EntityType 'Template001'

我该如何解决这个问题? 我肯定需要inheritanceEF类。

编辑

似乎不可能。 如果是这种情况,那么实现以下要求的最佳方法是:模板实体存储有关每个都有自己的代码要执行的模板的信息。 这就是为什么我试图从实体派生出来的原因。

为什么首先需要inheritance实体类? 如果要添加一些简单的行为,请使用partial class。

更新:根据评论,似乎行为可能会随着时间的推移而延长。 在这种情况下,我建议使用组合/聚合,而不是inheritance。 让需要扩展的类将实体作为字段。 在Raheel的场景中,它将是一个名为TemplateLogic的类,其字段/属性为Template类型。

它不受支持。 您无法从实体派生新类型,而是使用它而不是映射的实体类型来实现持久性。 如果要从实体派生类,则必须使用映射inheritance,其中每个子项也映射到数据库。