【问题标题】:What is the advantage of mapping relationships in Entity Framework without mapping in the table在Entity Framework中映射关系而不在表中映射有什么好处
【发布时间】:2020-01-08 04:19:20
【问题描述】:

我已经看到,在某些系统中,关系映射到实体框架中,而不是映射到 SQL 表中。使用实体框架映射关系而不是在 SQL 中映射关系有什么意义?

【问题讨论】:

    标签: c# sql-server visual-studio ssms-2017


    【解决方案1】:

    真正的答案?没有充分的理由,除非您在应用程序中需要它们,并且您不控制数据库,并且它没有它们。

    通常情况下,开发人员在关系方面假设“应用程序会这样做”,并且还假设没有其他应用程序或进程会接触该数据。

    这是关于后者的博文:https://blog.greglow.com/2016/05/31/should-my-database-have-foreign-key-constraints/

    【讨论】:

      【解决方案2】:

      首先,如果在大型系统中使用Entity框架,会减少很多代码。

      其次,我们不需要关心如何连接数据库。

      第三,实体框架可以作为数据服务和OData服务的基础设施。

      【讨论】:

      • 大型系统通常是您最不想使用 EF 的地方。大型系统是您需要精确控制正在执行的查询的地方。我一生都在解决人们使用 EF 的大型站点的性能问题。例如,它有许多选择不当的内部默认值。适合玩具系统,不适用于大型系统。
      • 那么最好的做法是在数据库本身中进行映射?
      • 如果你想做一个实时程序,我建议你最好使用sql表本身。如果您想将数据从数据库传输到基于云的数据服务,您可以使用 Entityframework。
      猜你喜欢
      • 2019-09-13
      • 1970-01-01
      • 1970-01-01
      • 2013-06-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多