使用Entity Framework的IOC

7

我正在尝试使用Unity Framework和Entity Framework。让我解释一下场景。假设我有一个包含5个表的数据库。我将拥有5个接口,每个接口对应于数据库中的一个表,每个字段都作为成员。现在我希望我的Entity Framework生成的类实现相应的表接口。所有导航属性都应返回对象作为接口引用。这应该允许我使用Unity框架解析这些实体,以允许任何人扩展EF(数据)实体而不破坏所需的代码。这是可能的吗?

1个回答

5
没有IoC容器用于解析实体的可扩展性点。 EF将始终处理持久化实体的实例创建。此外,EF映射必须使用类而不是接口。
您只能在ObjectContext上处理ObjectMaterialized事件并提供一些额外的已创建实体的初始化。
您可以尝试通过实现自定义T4模板并包含一些约定(例如接口名称始终为实体名称的I +)来添加接口,但仍然没有IoC。

谢谢。我正在研究这个问题,关于T4模板,我编写了自定义接口模板,同时修改了POCO模板以适用于类。我需要研究一下你提到的ObjectMaterialized问题。我已经担心EF只能处理类了。 - Mazhar Qayyum

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接