3

为什么我们可以使用自动属性DBSet,但不能使用ObjectSet

public class SomeContext : DbContext
{        
    public DbSet<Address> Addresses { get; set; }
             ...
}

谢谢

4

2 回答 2

11

DbContext 使用约定优于配置范式。它根据在 DbContext 派生类上定义的 DbSet 属性发现实体集(或者通常,它根据您的代码发现您的模型)。ObjectContext 不进行任何发现并且不基于约定。它只是从 csdl、ssdl 和 msl 工件中读取您的模型。因此,ObjectContext 要求用户准确地告知需要公开的内容。

于 2012-04-18T19:57:22.930 回答
4

仅仅是因为 DbContext API 是较新的版本,旨在提供简化的 API 以获得更好的开发体验。

于 2012-04-18T19:57:11.640 回答