代码之家  ›  专栏  ›  技术社区  ›  Dimitri

何时以及为什么插入实体及其关系实体引用

  •  0
  • Dimitri  · 技术社区  · 5 年前

    我正在为一个文件中的批量导入构建一个函数,我在问自己应该做什么,我想要一些反馈,也许将来会学到一些东西。

    我有三个实体,我们称它们为e1、e2和e3。

    e1具有属性e2,e2具有属性e3。我可以建立一切(进行检查等)并插入e3,它将插入e1&e2(如果它们不存在,当然,否则我会附加它们)。

    但我为什么不构建e1并插入它,继续构建e2并插入它,最后构建e3(使用e1&e2)并插入它呢?

    我不应该这样做有什么特别的原因吗,对很多电话来说,这是一个“不允许”的决定…?

    亲切的问候!

    1 回复  |  直到 5 年前
        1
  •  1
  •   Nikolaus    5 年前

    最重要的是在添加所有实体时,在最末尾调用上下文的savechanges。这样,在一个事务中插入/更新所有实体,并且尽可能少地调用数据库。 其好处是性能良好和原子事务(全部成功或全部失败)。