1.使用Entity Framwork框架常用的技术手段Code First 和Reverse Engineer Code First

提示:VS版本2013,  Entity Framwork版本5.0.0,Mysql数据库 

使用Entity FrameWork的好处就不多说,直接上手如何使用。两种形式:1.将代码映射到数据库实体,使用的是Code First技术。2.将数据库实体转成代码,使用的是Reverse Engineer Code Fist技术。

一.Code First技术

1.建好项目,并加入一个名为CodeFirstDemo控制台应用程序项目。

2.配置。工具>>库程序包管理>>管理解决方案的NUGet程序包__安装EntityFramework.

1.使用Entity Framwork框架常用的技术手段Code First 和Reverse Engineer Code First

这样在CodeFirstDemo项目中就自动添加了EntityFramwork的引用。

1.使用Entity Framwork框架常用的技术手段Code First 和Reverse Engineer Code First

接下来就是App.config的设置,重点就是连哪个数据库,创建数据库的名称。

默认是这样:

<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="v11.0"/>
</parameters>
</defaultConnectionFactory>
</entityFramework>

可以删除,加入

<connectionStrings>
<add name="BookContext" connectionString="server=localhost;user id=user;password=******;persistsecurityinfo=True;database=Book"
providerName="MySql.Data.MySqlClient" />
</connectionStrings>

可以看到,我们是在MySql中创建的名为Book的数据库。

3.开始写代码

namespace CodeFirstDemo
{
public class Book
{
public string Title { get; set; }
public string Author { get; set; }
[Key]
public int Code { get; set; }
}
public class BookContext : DbContext
{
public DbSet<Book> Books { get; set; }
}
class Program
{
static void Main(string[] args)
{
using (var db = new BookContext())
{
Book book1 = new Book{ Title = "编程语言",
Author ="李昊"};
db.Books.Add(book1); Book book2 = new Book{ Title = "C#语言",
Author = "李大昊"};
db.Books.Add(book2);
db.SaveChanges(); var queryResult = from b in db.Books
orderby b.Title
select b;
foreach (var item in queryResult)
{
Console.WriteLine(item.Title+"..."+item.Author);
}
Console.ReadKey(); } }
}
}

4.可以查看数据库中是否存在这样的数据 方法有两个。第一个借助MySql查看工具Navicat for MySql。第二种工具>>连接数据库>>连接MySql中的book库,通过左边服务器资源管理器来查看。

1.使用Entity Framwork框架常用的技术手段Code First 和Reverse Engineer Code First

上一篇:学习笔记3


下一篇:Android Platform Guide