EFCore2.0 Code First基本使用
前言
在网上找EFCore Code First相关的文章,很多都是基于core 1.0版本的,觉得有必要自己实践下2.0。所以,撸起袖子干吧!~
1.新建控制台项目
2.打开程序包管理器控制台。工具->NuGet包管理器->程序包管理器控制台
Install-Package Microsoft.EntityFrameworkCoreInstall-Package Microsoft.EntityFrameworkCore.SqlServerInstall-Package Microsoft.EntityFrameworkCore.Tools
依次安装以上三个Nuget包
3.新建User类:
public class User { public int Id { get; set; } [MaxLength(30), Required] public string Account { get; set; } [MaxLength(30), Required] public string Password { get; set; } }
public class TestDbContext : DbContext { public DbSetUser { get; set; } protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { optionsBuilder.UseSqlServer( "Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=TestDB;Data Source=.");//数据库连接字符串,其中TestDB是数据库名称 } protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Entity ().HasIndex(u => u.Account).IsUnique(); } }
4.初始化,生成数据库
在程序包管理器控制台依次执行以下命令
Add-Migration Init //其中Init是你的版本名称update-database Init //更新数据库操作 init为版本名称
执行完以上操作后,数据库就创建成功了。
4.数据库修改
在我们实际开发的过程中,经常性的会修改字段,那在code First中如何处理呢?
实例:将User类的Password的长度修改为15public class User { public int Id { get; set; } [MaxLength(30), Required] public string Account { get; set; } [MaxLength(15), Required] public string Password { get; set; } }
控制台运行:
Add-Migration EditPwdLength //同上,不在解释update-database EditPwdLength
运行成功后,刷新数据库查看