【问题标题】:Update A Collection With Entity Framework使用实体框架更新集合
【发布时间】:2010-01-07 22:48:04
【问题描述】:

我有一组分离的客户端对象,我想更新(我知道它们已经通过主键存在于数据库中)。现在我想将它们更新到数据库中。知道我需要先查询它们,我这样做了,现在基本上必须从分离的对象中获取属性并将它们应用于附加的对象。我终于调用了保存更改。有没有一种巧妙的方法将这些属性从分离的集合应用到附加的集合?

注意:分离的对象中没有主键,但我确实有足够的信息可以通过比较器类进行链接。

【问题讨论】:

    标签: entity-framework ado.net-entity-data-model


    【解决方案1】:

    你不需要做你正在做的事情。您可以在 ObjectContext 上调用 Attach 方法,告诉它您想要使用分离的对象。然后只需调用 SaveChanges 以使用您更改的对象更新数据库。

    【讨论】:

    • 先附加,再修改,再SaveChanges。
    • 所以如果我附加了对象(没有主键),它怎么知道要同步对象呢?我有一个比较器类可以通过 Linq 调用执行此操作,但我不知道如何通过 Attach 来做到这一点
    • 如果 PK 没有设置,你怎么知道它们代表哪些对象以便你可以手动同步?
    • 我有一个比较器类可以确定这一点。这是我用来排除和相交这些对象的方法。
    • 您应该使用该信息更新问题。这极大地改变了事情。
    猜你喜欢
    • 1970-01-01
    • 2012-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-03
    • 1970-01-01
    • 2011-03-06
    • 2011-12-10
    相关资源
    最近更新 更多