ASP.NET Core 操作数据库
1.新建model层
public class Users{
public int id { get; set; }
public string Name { get; set; }
public string Age{ get; set; }
public virtual Users Users { get; set; }
}
(Model 要和项目的.net core版本一致)
2.安装NuGet程序包
需要安装三个框架
右击项目(不是解决方案)–>选择“管理NuGget程序包(n)”–>浏览—>搜索
Microsoft.EntityFrameworkCore
Microsoft.EntityFrameworkCore.SqlServer
Microsoft.EntityFrameworkCore.Tools
3.创建数据库上下文
using Microsoft.EntityFrameworkCore;
using Model;
public class TheConText : Dbcontext{
//ctor+tab
public TheConText(DbContextOptions<TheConText> options):base(options){
}
public Dbset<Users> Users{set;get;} //对应一个表
//public Dbset<Books> Books{set;get;} //对应一个表
}
4.修改配置文件
并安装–>然后找到Appsettings.json文件,并添加数据库连接语句如下
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"AllowedHosts": "*",
"ConnectionStrings": {
"Newsql": "Data Source=.;Initial Catalog=Thebook;User ID=sa;password=11"
}
}
//"ConnectionStrings"语句是固定的,Newsql名字可以随便定义,我这里用的是sa账号登录Thebook是数据库
4.注册数据库上下文
在Startup类的中ConfigureServices方法中添加
services.AddDbContext<rgcontext>(options=>
options.UseSqlServer(Configuration.GetConnectionString("Newsql")));
//这里的Newsql是配置文件Appsettings.json中的
# 此时生成项目如果没有任何错误就可以进行命令行操作了。
数据库迁移
从“工具”中,选择“NuGet 包管理器” --> “包管理器控制台”。
在PowerShell中分别输入以下命令
1.Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design -Version 2.0.0
2.Add-Migration Initial
3.Update-Database
Install-Package 命令安装运行基架引擎所需的工具。
Add-Migration 命令生成用于创建初始数据库架构的代码。 此架构以(TheConText.cs 文件中的)DbContext 中指定的模型为基础。 Initial 参数用于为迁移命名。 可以使用任意名称,但是按照惯例应选择描述迁移的名称。
Update-Database用于将以上操作保存到数据库中(生成数据库)
//此文章借鉴于https://www.bilibili.com/video/av34462368