说明:本篇重点说明MiniAPI引入EntityFramework,EF的使用不是本篇的重点
本篇是在MiniAPI中使用EntityFramework,所以先奉上创建数据的脚本,数据库是SQL Server,可能版本不同,会有一些问题,可以自行调整,这个脚本是基于SQL Server2019的。
有了数据库后,接下来开始在Mini API项目中引入EntityFramework,首选安装dotnet-ef的tool:
dotnet tool install --global dotnet-ef
再在项目中引入nuget包 Microsoft.EntityFrameworkCore.Design和Microsoft.EntityFrameworkCore.SqlServer
这时就可以从数据生成EF的实体类了:
dotnet ef dbcontext scaffold "server=.;database=Exam;uid=sa;pwd=sa;" Microsoft.EntityFrameworkCore.SqlServer -o Models
对生成的EF实体类进行整理,因为在导出实体类时,我们给了他一个连接字符串,所以在生成的实体类中是有这个连字符串的,打开ExamContext.cs,删除选中OnConfiguring这个方法。
在appsetings.json中配置连接字符串
引入EF用AddDbContext,参数Options决定有什么类型的数据库,和数据库连接字符串。然后在MapGet中从服务容器中取到ExamContext使用就可以。
运行结果: