Entity Framework4.0 (三)概述(EF4 的Code First方法)
2011-12-17 23:29
155 查看
EF4支持三种构建方法:1. Database First方法。2.Model First方法。3.Code First 方法。开发人员可根据具体的项目情况,选择任一种方法。
上次快速演示了Model First的方法。这次演示Code First方法。
EF4.0引入CTP4可支持Code First了。Microsoft在EF4.1中引入EntityFramework4.1/4.2加强Code First的支持。(EF4.1的DataAnnotation, Fluent API 更完善,对POCO的支持更直接方便。关于EF4.1/4.2的使用,我在后面博文中我会补上的。)
在此,给出EF4.0的使用方法以快速演示:
首先,我们要下载并安装CTP4:URL http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=8812。
当安装完成CTP4后。(安装CTP4之前最好把Visual Studio2010关掉。)
1. 启动Visual Studio 2010.
2. 创建一个Console Application : 名称:EFCodeFirstWalkthrough
3. 在解决方案上右键,选择:添加一个类库项目:名称:EFCodeFirstWalkthroughModel。
4. 右键EFCodeFirstWalkthrough项目,添加.NET类库引用:Microsoft.Data.Entity.CTP; 添加.NET类库引用:System.Data.Entity.添加项目引用:EFCodeFirstWalkthroughModel.
5.在类库项目中添加类文件:Author.cs,Book.cs,Person.cs,Publisher.cs:代码如下:
Program
编译项目,执行。
然后观察数据库:会发现生成一个名为CodeFirstWalkthrough的数据库文件。并且在里面有数据表生成。
注意:在此项目演示过程中,我们并未指定SqlConnection所用的连接字符串,但是EF4会利用我们指定给SqlConnection的参数去生连接特定的数据库服务器,并生成数据库。
好了,Code First 先到这里吧。休息咯!!!
上次快速演示了Model First的方法。这次演示Code First方法。
EF4.0引入CTP4可支持Code First了。Microsoft在EF4.1中引入EntityFramework4.1/4.2加强Code First的支持。(EF4.1的DataAnnotation, Fluent API 更完善,对POCO的支持更直接方便。关于EF4.1/4.2的使用,我在后面博文中我会补上的。)
在此,给出EF4.0的使用方法以快速演示:
首先,我们要下载并安装CTP4:URL http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=8812。
当安装完成CTP4后。(安装CTP4之前最好把Visual Studio2010关掉。)
1. 启动Visual Studio 2010.
2. 创建一个Console Application : 名称:EFCodeFirstWalkthrough
3. 在解决方案上右键,选择:添加一个类库项目:名称:EFCodeFirstWalkthroughModel。
4. 右键EFCodeFirstWalkthrough项目,添加.NET类库引用:Microsoft.Data.Entity.CTP; 添加.NET类库引用:System.Data.Entity.添加项目引用:EFCodeFirstWalkthroughModel.
5.在类库项目中添加类文件:Author.cs,Book.cs,Person.cs,Publisher.cs:代码如下:
Program
using System; using System.Collections.Generic; using System.Linq; using System.Text; using EFCodeFirstWalkthroughModel; using System.Data.Entity.ModelConfiguration; using System.Data.SqlClient; namespace EFCodeFirstWalkthrough { class Program { static void Main(string[] args) { var builder = new ModelBuilder(); builder.Configurations.Add(new BookConfiguration()); builder.Entity<Person>(); builder.Entity<Publisher>().Property(p => p.Name).IsRequired().HasMaxLength(50); var model = builder.CreateModel(); using (var connection = new SqlConnection(@"Server=.\SQLEXPRESS;Database=CodeFirstWalkthrough;Trusted_Connection=True;")) { using (var context = model.CreateObjectContext<BookCatalog>(connection)) { if (!context.DatabaseExists()) { context.CreateDatabase(); } var book = new Book { ISBN = "1111", Title = "Intro to Code First", FirstPublished = DateTime.Today, IsFiction = false, Author = new Author { FirstName = "Rowan", LastName = "Miller" }, Publisher = new Publisher { Name = "EF Books" } }; context.Books.AddObject(book); context.SaveChanges(); } } } } }
编译项目,执行。
然后观察数据库:会发现生成一个名为CodeFirstWalkthrough的数据库文件。并且在里面有数据表生成。
注意:在此项目演示过程中,我们并未指定SqlConnection所用的连接字符串,但是EF4会利用我们指定给SqlConnection的参数去生连接特定的数据库服务器,并生成数据库。
好了,Code First 先到这里吧。休息咯!!!
相关文章推荐
- Entity Framework4.0 (三)概述(EF4 的Code First方法)(转)
- Entity Framework4.0 (三)概述(EF4 的Code First方法)
- EF4 Code First和EF6 Code First链接mysql的方法
- Entity Framework4.0 (一)概述(EF4 的Database First方法)
- Entity Framework4.0 (二)概述(EF4 的Model First 方法)
- Entity Framework(EF的Code First方法)
- Entity Framework4.0 (二)概述(EF4 的Model First 方法)
- Entity Framework4.0 (一)概述(EF4 的Database First方法)
- Entity Framework4.0 (一)概述(EF4 的Database First方法)(转)
- Entity Framework4.0 (二)概述(EF4 的Model First 方法)(转)
- Entity Framework4.2 (十)CodeFirst(EF4 .2的Code First方法)(转)
- Entity Framework4.0 (一)概述(EF4 的Database First方法)
- Entity Framework4.2 (十)CodeFirst(EF4 .2的Code First方法)
- Entity Framework4.0 (二)概述(EF4 的Model First 方法)
- PHP 5.3新增魔术方法__invoke概述
- EF更新数据库结构seed方法不执行
- Linux课程开启前学习软件准备及学习方法概述01
- ORM框架 EF - code first 的封装 优化一
- MVC实用构架设计(三)——EF-Code First(6):数据更新最佳实践
- O-C相关04:类方法的概述与定义和调用