【问题标题】:Entity Framework, Repository Pattern, Update in Detached Scenario实体框架、存储库模式、分离场景中的更新
【发布时间】:2013-06-04 19:03:05
【问题描述】:

我正在尝试使用 EF 5.0 在分离场景(短期上下文)中更新包含修改/添加/删除实体的 ICollection 的对象图?

我有这样的事情:

Visit (Edited)    
    FinancialInfo (Unchanged)
          Discount1 (Added)
          Discount2 (Modified)
          Discount3 (Deleted)

当我尝试更新访问时,它会抛出 OptimisticConcurrency 异常:

“存储更新、插入或删除语句影响了意外 行数 (0)。实体可能已被修改或删除 实体已加载。刷新 ObjectStateManager 条目。”

其实我知道是什么导致了问题,但是我使用的是存储库模式,我不直接使用 DbContext。

我可以为访问实体编写自定义更新逻辑来处理该问题,但我正在寻找一个通用选项。

This 让我觉得,可能没有不劳而获的方法,但无论如何......

我们将不胜感激。

谢谢

【问题讨论】:

    标签: entity-framework repository-pattern


    【解决方案1】:

    此时我就是这样做的:

    我重写了我的基础存储库类的 Update 方法,并编写了关于在更新树中处理对象的自定义逻辑。我关注了this example

    我不喜欢这个解决方案,但我希望 EF 在不久的将来会变得更加灵活。感谢您的关注,。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多