EF CORE EntityState 实体类状态

  • Detached:对象存在,但未由对象服务跟踪。在创建实体之后、但将其添加到对象上下文之前,该实体处于此状态;
  • Unchanged:自对象加载到上下文中后,或自上次调用 SaveChanges() 方法后,此对象尚未经过修改;
  • Added:上下文正在跟踪该实体,但是该实体尚不存在于数据库中;
  • Deleted:实体正在由上下文跟踪,并存在于数据库中。 它有被标记为要从数据库中删除。;
  • Modified:实体正在由上下文跟踪,并存在于数据库中。 它的部分或全部属性值已被修改。

 

 

  • Add 将EntityState状态变为Added
  • Attach 将EntityState并不是将状态变为Unchanged,分两种情况,如果一个实体或关系实体设置了其主键值,则将在“unchanged”状态下对其进行跟踪。如果未设置主键值,则将在“added”状态下对其进行跟踪
  • public void updateAttach1()
            {
                User u = new User();
                u.FirstName = "zhan111g";
                u.UserId = 2;
              
                Order or = new Order();
                or.Address = "hongkou";
                or.City =

你可能感兴趣的:(EF,CORE)