我正在开始一个新项目,我对使用Entity Framework感兴趣。但是,由于这是一个新项目,还没有现有的模型或数据库,因此我可以在这种情况下使用数据库优先或模型优先。
当从这样的空白平板开始时,是否建议先使用模型,让EF自行确定数据库设计或设计数据库?我很乐意设计规范化数据库,所以我不怕这方面,但我不确定让EF处理所有数据库设计是否具有可维护性和性能优势。
先谢谢你们!
答案 0 :(得分:3)
在绿色的田野项目中,我的选择首先是代码,或者可能是先建模。随着项目的进展,您应该只处理代码并让EF管理数据库架构更改。使用其他方法可以将重点从核心活动转移到模型维护。在我工作的项目上,我们被管理层强制使用由专门的架构开发人员创建的数据库,该开发人员只知道如何使用SQL Server Management Studio。因此,数据库的每次更改都意味着我们必须重新生成代码。这最终导致我们花了2天时间开发自动导入数据库模式和生成对象模型的工具(这是在EF 3.5天内)。
我会为棕色领域和维护项目留下数据库第一种方法。
答案 1 :(得分:1)
答案 2 :(得分:0)
好吧,作为一名开发人员,对任何旧方法构建数据库感到满意,我发现代码首先让我专注于我的任务。您的里程可能会有所不同。
我已经使用了很多次,并且能够毫无困难地使用代码优先维护我的数据库。