Entiy Framework 简介
ADO.NET Entity Framework(EF)是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案,在早期被称作ObjectSpace。它消除了对开发人员通常需要编写的大部分数据访问代码的需求。现在已被包含在.Net Frameowrk35 SP1及以上版本中。目前最新版本为6.1,http://entityframework.codeplex.com。
EF是微软主推的数据存取技术,在一些微软的其他的技术领域,如ASP.NET MVC、WCF等,都是用EF来构建数据存取层。
EF支持多种数据库,如SQLServer、Oracle、MySQL、SQLLite等,但是与SQLServer的支持最好。
Entity Framework有三种开发模式,原分别是:Database First(数据库优先)和Model First(模型优先)、Code First(代码优先)。
- Database First(数据库优先)
如果你想把EF用于已经存在的数据库,那么这种模式正好适合你。使用EF设计工具,根据数据库生成对应的数据类。使用EF开发工具还可以修改这些模型之间的对应关系。
- Model First(模型优先)
如果你的程序没有设计相关数据库,那么通过EF开发工具创建数据模型并生成对应的数据库。
- Code First(代码优先)
只要编写对应的数据类,然后自动生成数据库。这样开发人员可以针对数据模型进行操作,而不必关心关系数据库的存储关系,以更加自然的面向对象的方式开发。这是从EF4.1开始新加入的功能。支持通过Data Annotations或Fluent API进行定制化配置。