每个数据库有多个/单个*.edmx文件

0x4*_*9D1 6 c# database datacontext entity-framework wcf-data-services

我有一个通过ADO.net Data Services与数据库交互的项目.数据库很大(几乎150个表具有依赖性).该项目于几年前启动,当时使用的是DataSet; 现在我们正朝着实体模型关系迈进.由于我们要添加更多需要使用的表,因此该模型正在增长.这是管理所有这些的正确方法吗?我应该有一个SINGLE数据库模型文件来拥有单个数据上下文吗?

有什么缺点,如何将实体框架与大型数据库一起使用(或者不应该与大型数据库一起使用?

我看到的缺点是:

  • 在设计器中打开大型XML时,Visual Studio 2010开始冻结(可能这不是问题,因为即使有很多表也不会长时间冻结).
  • 很难在模型中找到引用(尽管F4 +属性窗口的对象名称的组合框几乎消除了这个与搜索相关的问题).

PS,奇怪,没有人回答.这个问题看起来很重要,用简单的话来说,我只是改写一下:哪个更好,一个整体,一个大型数据库的模型或该数据库的几个模型?

Jam*_*unt 3

我怀疑你没有得到很多答案,因为这不是一个大问题。即使你有这两个缺点,你也说它们并不是真正的问题。当然,EDM 可以很好地处理大型数据库。我认为数据库越大,就越需要 ORM 解决方案。

但是,您可以将一个模型拆分为多个文件,如果这有助于您保持组织有序,即多个 .edmx 文件可以构成单个数据上下文。

或者,如果您可以在逻辑上将模型拆分为可以通过接口进行交互的独立部分,而不需要直接连接数据上下文中的实体,这既有利于管理实体数据模型,也有利于基本的关注点分离。