1

首先 - 我对 EF4 的工作方式很满意。我现在主要关心的是当我获得超过 100 个表时是否能够扩展。理想情况下,模式需要保存在相同的数据上下文中。如果我必须将其分解为主题领域,那将不是很好。会有重复的代码等。

所以。没有解决方案可以将 EF4 分成块并保持关系。实际上,有一种方法是不使用设计器并手动编辑 XML。不好。

在这里我找到了 LLBLGen Pro。我知道这是一个带有设计器的 ORM 框架,但我也知道我可以使用他们的设计器来生成 EF4 实体。

我是否正确理解:

  1. 我仍然可以像使用 VS 设计器一样使用 EF4 吗?我的意思是输出会一样吗?我在某处读到我仅限于使用存储过程,没有 LINQ?还是会像 EF 一样?
  2. 我将能够管理大型数据库,唯一的缺点是如果数据库发生更改,我将不得不从 Visual Studio 外部重新生成代码?

如果这是正确的 - 它可能是解决缓慢的设计师/模型问题的好方法。

4

1 回答 1

4

我仍然可以像使用 VS 设计器一样使用 EF4 吗?我的意思是输出会一样吗?我在某处读到我仅限于使用存储过程,没有 LINQ?还是会像 EF 一样?

你在哪里读到它仅限于存储过程?它生成类和 EDMX。您可以选择生成 POCO、STE 或“EFv1 样式”实体/上下文。所以你可以用 EF 做你想做的事,使用 Linq、实体 sql 等。生成的类是使用可以在集成模板编辑器中编辑的模板生成的。此外,这些类被生成到单独的文件中,因此在 1 个文件中不再有 1 个大代码块,并且每个项目都进行了组织,因此 1 个项目中的实体,另一个项目中的 context + edmx,因此您可以更好地分离代码,以便您可以参考实体项目在其他地方没有也参考那里的上下文。

我将能够管理大型数据库,唯一的缺点是如果数据库发生更改,我将不得不从 Visual Studio 外部重新生成代码?

是的。LLBLGen Pro 还支持模型优先 btw,可以生成 DDL SQL 脚本来更新您的数据库,因此您可以在 1 个项目中管理数据库模式 + 实体模型。:)

LLBLGen Pro 的设计器已经过超过 2500 个实体的项目的测试,因此它可以使用相当大的数据库;)

希望这可以帮助

(免责声明:我写的是 LLBLGen Pro)

于 2011-09-03T08:36:45.803 回答