什么是Unchanged状态实体键值

读取MSDN后附加和分离对象。

对象以Unchanged状态附加到对象上下文。 如果我们调用Attach方法。 并且在Unchanged状态下,实体框架将实体键值视为最终值。

什么是“最终”意味着什么?


处于“未更改”状态的对象意味着上下文不知道与数据库中的状态相比实体的任何更改。

你可以通过这种方式人为地达到这个状态(例如):

  • 使用一个上下文实例从数据库加载实体。
  • 从第一个上下文实例中分离它。
  • 更改属性。
  • 将实体添加到新的上下文实例。
  • 新的上下文实例将不知道实体相对于数据库中数据的变化,并将所有属性值视为对象的最终状态。

    特别是关于实体键的值,假定键是当前在数据库中表示正确的值,所以键不会被修改/修正。


    Key值是实体的唯一标识符,一旦连接,它就不能被修改。 实体的所有其他属性都可以在连接后进行更改。

    链接地址: http://www.djcxy.com/p/33545.html

    上一篇: What is the Unchanged state entity key value

    下一篇: ObjectContext with Entity Framework 6 inserting duplicates on existing related entities