asp.net core 使用 ef core 启用 mysql 数据库
基于 MySQL 有两个 EF Core 数据库提供程序 Pomelo.EntityFrameworkCore.MySql 和 MySql.EntityFrameworkCore,建议使用 Pomelo.EntityFrameworkCore.MySql。参考:https://docs.microsoft.com/zh-cn/ef/core/providers/?tabs=dotnet-core-cli
mysql 配置
-
ASP.Net Core 项目NuGet 添加 Pomelo.EntityFrameworkCore.MySql
-
在 appsettings.json 配置数据库连接字符串
"DbContext": { "ConnectionString": "server=localhost; database = xxxDB; uid=root; pwd=123456;" }
-
在Startup中注册DbContext服务并配置MySql连接
services.AddDbContext<AppDbContext>(option => { option.UseMySql( Configuration["DbContext:ConnectionString"], ServerVersion.AutoDetect(Configuration["DbContext:ConnectionString"])); });
-
配置种子数据
注意:种子数据json文件切记为utf-8编码格式,否则生成的数据会中文乱码。
使用 .NET Core CLI 进行数据迁移
- 安装工具dotnet ef:dotnet tool install --global dotnet-ef
- 向项目添加工具包Microsoft.EntityFrameworkCore.Tools 才能对项目进行数据库迁移工作:dotnet add package Microsoft.EntityFrameworkCore.Tools
- 添加迁移:dotnet ef migrations add xxx
- 执行迁移:dotnet ef database update xxx
- 删除回滚迁移:dotnet ef database update xxx(回滚到对应版本,手动删除多余迁移文件或使用dotnet ef migrations remove逐个删除最新的迁移文件)
- 删除数据库:dotnet ef database drop
- 参考:
编写接口获取数据库数据
-
编写仓储服务层
-
编写接口
-
注册对应服务
-
请求接口
本文来自博客园,作者:weichangk,转载请注明原文链接:https://www.cnblogs.com/weichangk/p/15473645.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix