在网上找EFCore Code First相关的文章,很多都是基于core 1.0版本的,觉得有必要自己实践下2.0。所以,撸起袖子干吧!~

  1. Install-Package Microsoft.EntityFrameworkCore
  2. Install-Package Microsoft.EntityFrameworkCore.SqlServer
  3. Install-Package Microsoft.EntityFrameworkCore.Tools

依次安装以上三个Nuget包

  1. public class User
  2. {
  3. public int Id { get; set; }
  4. [MaxLength(30), Required]
  5. public string Account { get; set; }
  6. [MaxLength(30), Required]
  7. public string Password { get; set; }
  8. }
  1. public class TestDbContext : DbContext
  2. {
  3. public DbSet<User> User { get; set; }
  4. protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
  5. {
  6. optionsBuilder.UseSqlServer(
  7. "Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=TestDB;Data Source=.");//数据库连接字符串,其中TestDB是数据库名称
  8. }
  9. protected override void OnModelCreating(ModelBuilder modelBuilder)
  10. {
  11. base.OnModelCreating(modelBuilder);
  12. modelBuilder.Entity<User>().HasIndex(u => u.Account).IsUnique();
  13. }
  14. }

在程序包管理器控制台依次执行以下命令

  1. Add-Migration Init //其中Init是你的版本名称
  2. update-database Init //更新数据库操作 init为版本名称

执行完以上操作后,数据库就创建成功了。

在我们实际开发的过程中,经常性的会修改字段,那在code First中如何处理呢?
实例:将User类的Password的长度修改为15

  1. public class User
  2. {
  3. public int Id { get; set; }
  4. [MaxLength(30), Required]
  5. public string Account { get; set; }
  6. [MaxLength(15), Required]
  7. public string Password { get; set; }
  8. }

控制台运行:

  1. Add-Migration EditPwdLength //同上,不在解释
  2. update-database EditPwdLength

运行成功后,刷新数据库查看

好了。到这里基本就是使用EF Core CodeFirst的基本操作了。其他高深的操作,LZ也在学习!~权当记录吧。

EntityFrameworkCore

1.在实际生产环境中,我们是不可能直接在本地去更新数据库的,需要生成Sql脚本,在服务器上运行。至于如何生成脚本,LZ也还没找到,希望大佬们能给方案。

版权声明:本文为q975261413原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:http://www.cnblogs.com/q975261413/p/8093418.html