一个edmx文件或多个edmx文件?

时间:2013-11-03 16:51:37

标签: .net entity-framework

如果我有一个包含多个表的数据库,但每次我需要在我的网站中使用一个表时,我只需将它添加到一个模型中。按功能分解edmx文件会更好吗?

2 个答案:

答案 0 :(得分:2)

这实际上取决于您的应用结构,如果您的所有实体都相关,那么您应该将它们保存在一个EDMX文件中。

您必须将EDMX视为一个类。因此,如果您觉得他们在单独的文件中更好地组织,那么请继续创建尽可能多的组织/

我已经在我的一些应用程序中完成了这项工作,我想将这些问题分开。

我似乎不适合混合使用数据访问层。

管理员这样的事情:

private void SomeAdminFunction()
{
    using (var db = new AdminEntities())
    {
      //Access all Admin entities
    }
}
用户

private void SomeUserFunction()
{
    using (var db = new UserEntities())
    {
       //Access all User entities
    }
}

答案 1 :(得分:2)

有一种观点认为,通过将EDMX拆分为域驱动实体来分解您的网站是一个好主意。这使您可以设置一个上下文,其中包含特定于其将要执行的作业的数据视图,并隔离关注点。 Julie Lerman在她的Pluralsight课程中详细介绍了一些细节。实体框架1大型edmx或多域驱动模型?'>我也看到了这里描述的这种技术的问题

总的来说,这是否是一个好主意的答案可能取决于数据库和Web应用程序的性质。如果数据库包含永远不会暴露给Web的数据,那么这种分离是必不可少的。另一方面,如果只有少数几个表没有真正的问题可以揭露它们,那么它可能是一个额外的复杂性,不是必需的。