现在对于。net开发人员来说EF已经很流行了,虽然我在2010年的时候就用过EF,也看过几本书,但是还没有仔细研究EF的code, 曾经也尝试阅读EF5的源代码,后来由于时间关系也没有坚持住。现在计划阅读EF6 code first部分的源码,希望以此来了解EF的内部结构。首先下载EF6的源码,建议大家下载6.0.2,不要下载6.0.3.
我用的是SQL数据库,所以只需要加载2个项目就可以了。
EntityFramework
EntityFramework.SqlServer
需要取消这2个项目的强名称签名。
在实际开发中DB一般是其他team搭建的,所以我在测试的时候也是先建DB,那么这就需要调用以下code:
static NameOfYourContext() { Database.SetInitializer<NameOfYourContext>(null); }
否者会提示"Invalid object name 'dbo.__MigrationHistory'.错误信息
我的demo很简单 如下
demo下载