【问题标题】:Entity Framework code-first or database-first when there are a lot of stored procedures当有很多存储过程时,实体框架代码优先或数据库优先
【发布时间】:2019-10-27 17:07:21
【问题描述】:

我们有一些 ASP.NET 网络表单应用程序,我们希望迁移到 ASP.NET MVC 5 和 Entity Framework。

我们在 SQL Server 中有很多存储过程,所以我们需要从 ASP.NET MVC 应用程序中调用它们。

问题是:哪个更合适?

  • 实体框架数据库优先
  • 实体框架代码优先

【问题讨论】:

  • 适用性不再是问题。不推荐使用数据库优先。对于调用存储过程,还有更多选项,例如 Dapper。
  • 感谢阿诺德,看来 Dapper 是个好建议

标签: asp.net-mvc entity-framework stored-procedures


【解决方案1】:

尽管这是强烈的偏见和基于意见的:

我会先寻找代码:总是……(嗯……除非应用程序的生命周期快要结束了)

至于您的存储过程;您可以通过应用自定义迁移来添加它们。

2 个主要好处:

  • 没有工具依赖项(图表等)(过去这些可能很慢)
  • 无需手动修改数据库,通过代码进行完整配置(因此代码始终正确)

既然是迁移;您可能希望基于现有数据库生成代码优先代码。

【讨论】:

    【解决方案2】:

    使用 SQL Server 数据库项目来管理您的架构,并使用 EF 来管理 DB First。

    【讨论】:

    • 感谢 Erik,如果您想从头开始编写应用程序并从头开始创建表和 sp,我的意思是完全没有现有数据库的新项目?
    猜你喜欢
    • 2018-01-28
    • 1970-01-01
    • 1970-01-01
    • 2013-07-04
    • 2014-01-06
    • 1970-01-01
    • 2014-10-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多