我正在开发一个组件工厂系统,其中根据一些配置规则自动创建 ObjectContexts。每次调用方法时,组件工厂都会决定在哪里创建 ObjectContext/Transaction 范围等。
在大多数情况下,我能够处理 ObjectContext 的创建和处置。但是当一个方法递归地调用自己时,每次调用该方法时我都会创建一个 ObjectContext 。它会是这样的:
using (MyEntities entitityContext = new MyEntities())
{
// do some code here
entitityContext.SaveChanges();
using (MyEntities anotherEntitityContext = new MyEntities())
{
// do some other code here
anotherEntitityContext.SaveChanges();
}
}
EntityFramework 如何处理它?第二个 ObjectContext 是否与第一个相同?如果不是,我怎么能设法使第二个 ObjectContext 成为对第一个具有相同“新 ObjectContext()”结构的“相同”引用?
我知道对齐的 TransactionScopes 按顺序相互连接,具体取决于 Transaction 配置。我希望 ObjectContext 具有相同的行为。如果没有对父 ObjectContext 的任何引用,这可能吗?