1 EFCODE简介
在.NET3.5之前,我们经常编写ADO.NET代码或企业数据访问块来保存或检索底层数据库中的数据。做法是:打开过一个数据库的连接,创建一个DataSet来获取或提交数据到数据库,通过将DataSet中的数据和.NET对象相互转换来满足业务需求。这是一个麻烦且容易出错的过程。Microsoft提供了“Entity Framework”框架,用于自动地执行所有上述与数据库相关的活动。
EF是一个适用于.NET开发的开源ORM框架。它使开发人员能够通过领域对象来处理数据,而无需关注存储此数据的基础数据库。使用实体框架,开发人员在处理数据时可以在更高的抽象级别上工作,并且与传统应用程序相比,可以使用更少的代码创建和维护面向数据的应用程序。
官方定义:“实体框架是一种对象关系映射器(O/RM),它使.NET开发人员能够通过.NET对象来操作数据库。它消除了开发人员通常需要编写的大多数数据访问代码的需求。“
2 环境准备
1.建立model类库

将需要的model类定义好属性。
2.建立EFCODE运行环境类库

Nuget添加引用即可。
3.编写执行类
于efcode项目下编写MyContext.cs入口类。

内容如下:
using efcodeModels;
using Microsoft.EntityFrameworkCore;
using System;
namespace efcode
{
public class MyContext:DbContext
{
public DbSet<Province> Provinces { get; set; }
public DbSet<City> Cities { get; set; }
//连接数据库
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer("server=数据库ip地址;DataBase=想要生成的数据库名称;uid=sa;pwd=密码");
}
}
}
其中DbSet属性是将来于数据库生成的表,表名为Provinces、Cities,表中的属性即model类中定义的属性。
OnConfiguring方法是数据库连接入口。
4.打开程序包管理器控制台,执行框架。
如图,打开控制台:

输入 get-help entityframeworkcore ,查看entityframeworkcore帮助。

使用方法: 首先将efcode类设置为启动项目
1)控制台中输入 Add-Migration <xxxxname> ,name是数据库迁移文件的名称,自定义。回车运行后会在项目中自动生成数据库迁移文件。

2)数据库生成对应表
①第一种方法:生成sql脚本
使用Script-Migration命令,生成sql脚本。

可在数据库中直接执行。
②第二种方法:直接部署于数据库中。
使用Update-Database命令。 [-verbose命令是显示详细运行过程] 。
若数据库连接字符串无误,则可在数据库中生成对应的数据库和表。
