将EF4 CTP5迁移到RC1之后,我注意到不再可以通过DbContext访问ObjectContext。这意味着我无法访问ChangeObjectState方法。
class DataContext : DbContext
{
public DataContext()
{
}
public DataContext(DbCompiledModel dbModel)
: base(dbModel)
{
}
public DbSet<MyClass> MyClasses { get; set; }
public void ChangeObjectState<T>(T entity, EntityState entityState)
{
// this is no longer working.. where is ObjectContext?
ObjectContext.ChangeObjectState(entity, entityState);
}
}
有没有人知道如何在RC1中访问该方法?
感谢。
答案 0 :(得分:7)
您无需访问ObjectContext
即可更改对象状态。使用此:
this.Entry<T>(entity).State = entityState;