.net 刷新ObjectContext或重新创建它以反映对数据库所做的更改?

.net 刷新ObjectContext或重新创建它以反映对数据库所做的更改?,.net,entity-framework,objectcontext,.net,Entity Framework,Objectcontext,我有一个web服务,它向数据库和从数据库公开操作。我将实体框架4用于DAL 我想知道处理进出数据库的操作的最佳方式是什么。 最好不要保留ObjectContext的实例,而是为对数据库执行的每个操作创建一个实例?这似乎是一种非常糟糕的处理方法,但我想不出其他方法来跟上对数据库所做的更改 如果我保持相同的上下文处于活动状态,它如何知道数据何时被修改?我知道在查询数据库时,ObjectContext只是通过检查主键字段来检查记录是否已被添加或删除(是否正确?)。在这种情况下,我必须明确地告诉它刷新一

我有一个web服务,它向数据库和从数据库公开操作。我将实体框架4用于DAL

我想知道处理进出数据库的操作的最佳方式是什么。 最好不要保留ObjectContext的实例,而是为对数据库执行的每个操作创建一个实例?这似乎是一种非常糟糕的处理方法,但我想不出其他方法来跟上对数据库所做的更改

如果我保持相同的上下文处于活动状态,它如何知道数据何时被修改?我知道在查询数据库时,ObjectContext只是通过检查主键字段来检查记录是否已被添加或删除(是否正确?)。在这种情况下,我必须明确地告诉它刷新一个特定的对象,这不是很实际

我正在考虑一种解决方案,其中使用时间戳列,objectcontext检查该列的更改。如果该列被修改,它将刷新数据。
这样的解决方案是否构建在实体框架4中?或者,对于如何始终从数据库中获取最新数据而不必为每个请求重新创建ObjectContext,是否有人有任何其他建议?

ObjectContext是用来作为工作单元的,因此您可以为每个业务事务创建一个,然后进行处理


我实际上是在ObjectContext上使用repository模式,但我认为UnitOfWork实现只是意味着您只在最后保存更改,在本例中,通过调用SaveChanges方法。我不知道UnitOfWork模式指定在完成工作后必须处理对象。