学习实体框架与MVC一起使用,首先采用哪种方法?

时间:2013-02-27 18:16:21

标签: asp.net-mvc entity-framework ef-code-first ef-model-first ef-database-first

我是MVC的初学者,也是EF的初学者。为了在使用这些技术方面表现良好,我决定更清楚地理解事物。

现在,我开始阅读EF,并且知道有Model-firstDatabase-firstCode-first技术。

我真的想从最有利于我的那个开始,因为我将使用MVC开发,然后回到其他两个并在它们之间进行比较。

我唯一的问题是,我应该从哪种技术开始使用?

2 个答案:

答案 0 :(得分:2)

对于我们来说,我们的基础是数据库是否已经存在。在许多情况下,我们有预先存在的数据库,因此我们使用数据库优先。展望未来,我们更倾向于创建数据库,然后从中构建模型,因为我们在这样做时更有经验。我做了一次代码优先,我发现它很痛苦,但你确实有更好的控制,并更好地了解EF在幕后做什么。

抱歉,我无法提供更好的答案。

答案 1 :(得分:2)

如果我正在建立一个新网站,我会使用 Code First ,因为 Code First 是:

  1. 技术的未来(实体框架),微软的所有努力都在于开发这项新技术。 (我没有想出这个我的自己,我在微软的一个人的文章中看到它,抱歉我不记得是谁)。
  2. 它是为 DDD (域驱动开发)开发人员而构建的,它与TDD / BDD并排成为标准(强词)或构建软件系统的正确方法。 / LI>
  3. 正如它的名字暗示你可以提前开始编码(我喜欢这样做),并担心稍后会有你应该做的精细持久性细节。
  4. 如果强制使用现有数据库,我只会选择数据库优先

    Model First向 Code First 迈进了一步,所以如果我是你,我就不会倒退。

    注意:请在此处查看此问题,以便更好地进行比较Entity Framework Code First vs Model/Database First