1.安装 Nuget 包
Microsoft.EntityFrameworkCore
>Microsoft.EntityFrameworkCore.Tools
>Pomelo.EntityFrameworkCore.MySql
2.MVC 框架搭出来
models
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;namespace ShuYiTest.Models;
[Table("User")]
public class UserInfo
{[Key]public string ID { get; set; }public string UserName { get; set; }public string Password { get; set; }public string PhoneNumber { get; set; }}
Controller
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using ShuYiTest.helper;
using ShuYiTest.Models;namespace ShuYiTest.Controller
{[Route("[controller]/[action]")][ApiController]public class UserController : ControllerBase{[HttpPost]public IActionResult GetUser(UserInfo user){Console.WriteLine("Success");}}
}
3.创建 DbContext 类
using Microsoft.EntityFrameworkCore;
using ShuYiTest.Models;namespace ShuYiTest.helper;public class EFContext:DbContext
{public EFContext(){}public DbSet<UserInfo> Persons { get; set; }IConfiguration configuration = new ConfigurationBuilder().AddJsonFile("appsettings.json", optional: true, reloadOnChange: true).Build();protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder){optionsBuilder.UseMySql(configuration["ConnectionStrings:MysqlConnection"],new MySqlServerVersion(new Version(8,0,37)));}
}
4.appsettings.json 中配置连接字段
"ConnectionStrings": {"MysqlConnection": "server=localhost;port=3306;user=czm;password=Chenzhiming11.27;database=test"},
5.使用 ef 进行表的迁移
1.dotnet ef migrations add InitialCreate//创建迁移
2.dotnet ef database update//应用迁移
3.dotnet ef migrations list//查看迁移历史
6.efCore 的使用
https://learn.microsoft.com/zh-cn/ef/core