当前位置: 代码网 > it编程>编程语言>Asp.net > .NET 6 Entity Framework Core Db First(1) 创建模型

.NET 6 Entity Framework Core Db First(1) 创建模型

2024年05月16日 Asp.net 我要评论
项目准备 1、开发环境 vs2022 .NET6 2、创建项目 新建项目 ASP.NET Core Web API,解决方案名称:EFDBFirstDemo,项目名称:EFDBFirstDemo.API,选择.NET 6.0 解决方案=》新建项目=》类库,类库名称:EFDBFirstDemo.Mod ...

项目准备

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

 

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com