.net core 2.1 mysql_.net core +codefirst(.net core 基础入门,适合这方面的小白阅读,本文使用mysql或mssql)...

前言

.net core mvc和 .net mvc开发很相似,比如 视图-模型-控制器结构。所以.net mvc开发员很容易入手.net core mvc 。但是两个又有细微的区别,比如配置.net mvc中Web.config和Global.asax消失,而在.net core mvc中则是Startup.cs、Program.cs、appsettings.json等等。所以想要深入了解.net core就必须更加深入的学习。而刚刚开始的学习则是通过建立一个连接数据库的demo开始。由于配置文件的不同,导致很多新手在连接数据库,或者使用codeFisrt开发却不知道怎么配置。所以我在这里较为详细的写一个demo提供给需要此方面的博友。(如有不正确地方欢迎各位指正)

开发工具vs2017

数据库  mssql2014

.net core环境 .net core2.1

1】先建立model层

1.1先建立一个空白方案

045f9d574a920469e51655150352dcd2.png

然后建立一个内库,用来存放model:注意选择内库(.net core)

45677a3d89b2adf2361876314f6acaae.png

1.2在model层添加内容

现在nuget中分别引用:Microsoft.EntityFrameworkCore.SqlServer和Microsoft.EntityFrameworkCore.Tools,注意两者版本号最好相同,以免出错

cfcd46f45614e766ad2e4bc4298d8c03.png

然后加入model和数据库的上下文类DataBase(这个名字自己随意取),我在这里先只建立一个user表(注意在DataBase中需要

using Microsoft.EntityFrameworkCore;)

07226dc97a2d5aa81c5bf5f94210fd6a.gif

51c19f59001ed0cb35b008bdf098cefc.gif

public classDataBase : DbContext

{//构造方法

public DataBase(DbContextOptionsoptions)

:base(options)

{ }#region 数据区域

public DbSet User { get; set; }#endregion}

View Code

8789105aa02baf916c0f343973d72911.png

至此,model层配置完毕

2】开始建立.net core项目

先建立一个.net core项目

5b551a7e9d4b47fdf07e0caf64c1b1e4.png

0adc84d7583350ccfef1eab876bd9a5b.png

项目建立完毕之后先引用model层

31665e4b72578896defb1291a6655163.png

然后进入Startup.cs配置数据库连接,这里首先引用using Microsoft.EntityFrameworkCore;和model层 using Modelx;然后配置连接

7b7e11daff41820e764a4e5a6fc3bd70.png

注意services.AddDbContext中的DataBase是model层中的  数据库的上下文类,别弄错了

c07886f1370c9c47fc53737b66ec6125.png

以上全部完成,然后添加一个例子看看效果,在任意一个控制器中写入以下代码然后运行(.net core 的一个好处就是内置依赖注入)

9ab0cc39ade5c606b13be7ea955d4c9b.png

这时,会发现程序报错

5b16aa440265d49b504506ed5bf27e6f.png

原来,.net core 和.net mvc相比,在使用codefirst时候,除了配置文件之外,.net core 还需要在控制台中执行以下两行代码

07226dc97a2d5aa81c5bf5f94210fd6a.gif

51c19f59001ed0cb35b008bdf098cefc.gif

先输入:Add-Migration MyFirstMigration(名字。这里随意取未MyFirstMigration)

在输入:Update-Database

View Code

首先我们打开控制台:

42ca071669f27186e69da4eb68c5dbea.png

先输入:Add-Migration  MyFirstMigration然后回车等待运行完毕

823aab02bd450e1d2cf9cba197fa83c9.png

然后输入:Update-Database  回车,等到全部运行完毕之后,再运行项目看看,就发现项目正常运行,以及数据库正常生成

cdc669b24d92775b52656a93cb6d0517.png

3】ps:关于连接数据库的第二种方法。

关于上文连接数据库,或许有人会问:和自己连接的不太一样,.net core 连接字符串不是应该写在appsettings.json里面?下面,我就将连接数据库的第二种方法写在下面,毕竟多多益善

1518f355e112598fb17d2cb18177783d.png

f4c9c337159245cd582ec133081c072f.png

如果想尝试这种方法的话,别忘了在控制台输入

先输入:Add-Migration MyFirstMigrations(名字,为了和上面区分,这里加了s)

在输入:Update-Database

4】ps:关于连接mysql数据库。

首先在model层的nuget中引入 Microsoft.EntityFrameworkCore.Tools和 Pomelo.EntityFrameworkCore.MySql(圆圈是连接mssql必备、方块是连接mysql必备)

81d51539a494b6990600623d54c151b0.png

然后返回ui层的appsettings.json中修改连接字符串

26cefb495258c14484b2ed4e3fd7da4b.png

然后进入Startup.cs注入上下文

最后,在系统运行之前别忘记在nuget控制台中运行那两行命令

为迁移搭建基架运行:Add-Migration MyFirstMy

将新迁移应用到数据库运行:Update-Database

另外,需要注意的是,在默认项目这里选择你mode层的名字,否者运行错误

42383249210cdfe16043d9def7864bed.png

当以上全部完成之后,在运行程序,然后去看mysql数据库

c1a7ddfdee459471108eefc092f0e059.png

建议各位手打一次,加深印象。如果想偷懒的,付出代价(1积分)吧

如果觉得本文对你有用的话,帮忙在最下方点个推荐吧∑(っ°Д°;)っ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值