我正在将 Entity Framework 4.4 用于现有的 .NET 4.0 应用程序。它有一些模块化,我需要DbContext
每个模式都有一个。例如
public class AnimalContext : DbContext // animal schema
{
public IDbSet<Dog> Dogs { get; set; }
public IDbSet<Cat> Cats { get; set; }
}
和
public class FruitContext : DbContext // fruit schema
{
public IDbSet<Apple> Apples { get; set; }
public IDbSet<Pear> Pears { get; set; }
}
例如,某些实体引用不同模式中的实体
public class Dog
{
public Apple Apple { get; set; }
}
无论如何要确保由不同上下文创建的实体是相同的?IE
var animals = new AnimalContext()
var fruits = new FruitContext()
var dog = animals.Dogs.First();
var apple = fruits.Apples.First(x => x == apple)
// and object.ReferenceEquals(apple, dog.Apple)