.NET 6 Entity Framework Core Db First(1) 创建模型
项目准备
1、开发环境
vs2022 .NET6
2、创建项目
- 新建项目 ASP.NET Core Web API,解决方案名称:EFDBFirstDemo,项目名称:EFDBFirstDemo.API,选择.NET 6.0
- 解决方案=》新建项目=》类库,类库名称:EFDBFirstDemo.Model,选择.NET 6.0
安装 EF Core
安装方式
- 使用程序包管理控制台。打开方式:工具=》NuGet包管理器=》程序包管理控制台。使用方法:https://learn.microsoft.com/zh-cn/nuget/consume-packages/install-use-packages-powershell
- 通过右键单击项目并选择“管理 NuGet 程序包”来安装包
NuGet 程序包
- Microsoft.EntityFrameworkCore.Tools
安装 PMC 工具,执行设计时开发任务。 例如,可以创建迁移、应用迁移,并为基于现有数据库的模型生成代码。
参考:https://learn.microsoft.com/zh-cn/ef/core/cli/powershell
Install-Package Microsoft.EntityFrameworkCore.Tools -Version 6.0.27
- Microsoft.EntityFrameworkCore.Design
生成数据库实体、上下文,这个注意需要安装到启动项目(EFDBFirstDemo.API)
Install-Package Microsoft.EntityFrameworkCore.Design -Version 6.0.27
- Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore
提供 EF Core 错误页的 ASP.NET Core 中间件。 此中间件有助于检测和诊断 EF Core 迁移错误。
Install-Package Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore -Version 6.0.27
- Microsoft.EntityFrameworkCore.SqlServer
我这里使用的SQL server数据库,安装 Microsoft.EntityFrameworkCore.SqlServer NuGet程序包,
如果你使用其他数据库可参考:https://learn.microsoft.com/zh-cn/ef/core/providers/?tabs=dotnet-core-cli
Install-Package Microsoft.EntityFrameworkCore.SqlServer -Version 6.0.27
- 安装完成
创建模型
1、数据库连接字符串
在appsettings.Development.json 配置
{ "ConnectionStrings": { "demo": "Data Source=.;User Id=sa;Password=123456;database=demo;" } }
2、生成实体、上下文
- EFDBFirstDemo.API项目 添加引用 EFDBFirstDemo.API项目
- 执行命令,更多参数可查看:https://learn.microsoft.com/zh-cn/ef/core/cli/powershell
Scaffold-DbContext 'Name=ConnectionStrings:demo' Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -ContextDir Context -Context DemoContext