码迷,mamicode.com
首页 > 数据库 > 详细

NetCore2.0下使用EF CodeFirst创建数据库

时间:2019-04-27 13:18:49      阅读:251      评论:0      收藏:0      [点我收藏+]

标签:scope   eating   desc   报错   添加   .net   collect   build   ase   

 本文所使用的VS版本:VS2017 15.3.0 

 

首先新建一个.net core项目  取名NetCoreTask

 技术图片

 

 

 使用模型视图控制器方式

技术图片

 

新建Model层

 技术图片

 

 在Model层下新建一个user实体类  

1 namespace XX.Model
2 {
3     public class tb_User
4     {
5         public string ID { get; set; }
6         public string UserName { get; set; }
7         public DateTime CreateTime { get; set; }
8     }
9 }

 

新建一个Service层 在下面新建一个dbContext类  

 1 namespace XX.Service
 2 {
 3     public class XDbContext : DbContext
 4     {
 5         public XDbContext(DbContextOptions<XDbContext> options) : base(options)
 6         {
 7 
 8         }
 9         public DbSet<tb_User> UserExtend { get; set; }
10         protected override void OnModelCreating(ModelBuilder modelBuilder)
11         {
12             base.OnModelCreating(modelBuilder);
13         }
14     }
15 }

 

在Web项目下的appsettings.json文件中添加数据库连接字符串,添加后如下:  

 1 {
 2   "ConnectionStrings": {
 3     "XConnection": "Server=127.0.0.1;Database=XCoreDb;User ID=sa;Password=123456"
 4   },
 5   "Logging": {
 6     "IncludeScopes": false,
 7     "LogLevel": {
 8       "Default": "Warning"
 9     }
10   }
11 }

 

接下来修改 Web项目下的Startup中的ConfigureServices方法,修改后如下:

1 public void ConfigureServices(IServiceCollection services)
2         {
3             services.AddDbContext<XDbContext>(options =>
4                 options.UseSqlServer(Configuration.GetConnectionString("XConnection")));
5             services.AddMvc();
6         }

 

配置工作已经完成,接下来我们使用控制台命令生成数据库  FirstMigration这个名字是随便起的(定位在Service项目下)

PM> Add-Migration FirstMigration

果不其然报错了

技术图片

这是因为我们的Web项目和Service没有什么关系,添加Web项目对Service项目的引用后继续

技术图片

成功了!

我们发现Service项目下多了一个文件夹

技术图片

但是我们发现在Designer.cs这个文件中有一个错误

技术图片

这是因为我们没有添加 Microsoft.EntityFrameworkCore.SqlServer 这个引用

 

添加后,继续执行Update-Database -Verbose 命令

1 PM>  Update-Database -Verbose

技术图片

出现这个就是成功了。

 

技术图片

数据库创建成功!

 

最后的项目结构图:

技术图片

 

.NetCore2.0下使用EF CodeFirst创建数据库

标签:img   level   framework   结构   time   image   startup   spa   override   

原文:http://www.cnblogs.com/xx2oo8/p/7660352.html

NetCore2.0下使用EF CodeFirst创建数据库

标签:scope   eating   desc   报错   添加   .net   collect   build   ase   

原文地址:https://www.cnblogs.com/LiZhongZhongY/p/10778221.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!