.NET使用一行命令轻松生成EF Core项目框架

这篇具有很好参考价值的文章主要介绍了.NET使用一行命令轻松生成EF Core项目框架。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

dotnet ef是Entity Framework Core(EF Core)的一个命令行工具,用于管理EF Core应用程序的数据库和代码。除了提供管理数据库的命令之外,dotnet ef还可以生成和管理实体和上下文代码。本文将介绍如何使用dotnet ef动态生成代码。

一、环境准备

1、项目准备

用vs2022新建一个.NET6的asp.net core mvc项目,然后按照:工具->Nuget包管理器->nuget管理解决方案包。安装一些nuget包

Microsoft.EntityFrameworkCore.Design
Microsoft.EntityFrameworkCore.SqlServer
Microsoft.EntityFrameworkCore.Tools

或者用nuget命令安装

Install-Package Microsoft.EntityFrameworkCore.Design
Install-Package Microsoft.EntityFrameworkCore.SqlServer
Install-Package Microsoft.EntityFrameworkCore.Tools

2、安装dotnet ef

工具->Nuget包管理器->程序包管理控制台

执行 dotnet tool install --global dotnet-ef --version x.x.x  注:这里的包版本要和上面的版本一致,这个包直接通过右键管理程序nuget包方式安装会报冲突错误,谁知道原因可以说一下。

安装成功标志

二、生成代码

在vs2022中点击项目右键,选择"在终端中打开"。在命令行中运行以下命令,生成实体类,模型的代码:

dotnet ef dbcontext scaffold "Data Source=.;Initial Catalog=Wan;Persist Security Info=True;User ID=sa;Password=654321;TrustServerCertificate=true" Micros
oft.EntityFrameworkCore.SqlServer --output-dir Entities --context NewDbContext

上面脚本解释:

scaffold后面是数据库链接字符串,--output-dir参数指定输出目录,--force参数表示强制覆盖生成的文件。运行这个命令将生成一个或多个实体类的代码。--context参数为指定上下文类的名称。

亦可以用以下命令一键生成。

dotnet ef dbcontext scaffold "Data Source=.;Initial Catalog=Wan;Persist Security Info=True;User ID=sa;Password=654321;TrustServerCertificate=true" Microsoft.EntityFrameworkCore.SqlServer  -o Models

-o Models的意思是将生成的实体类文件输出到名为Models的文件夹中。这里没有指定上下文,默认上下文的文件名为数据库名称。

效果如下:

片段代码如下:

小插曲:

在生成代码时遇到如下问题:

A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - 证书链是由不受信任的颁发机构颁发的。)

解决方法直接在“数据库连接字符串最后面”增加证书信任的配置。;TrustServerCertificate=true。

结语

使用dotnet ef可以轻松地生成实体和上下文类的代码。在EF Core应用程序中,这是一个非常方便的工具,因为它可以减少手动编写代码的时间,并提供了基本的代码框架,使您可以专注于业务逻辑的实现。本文介绍了它的实现步骤,仅供参考,希望本文对你有所收获,同时欢迎留言和吐槽。

****参考:微软官网文档文章来源地址https://www.toymoban.com/news/detail-426899.html

来源公众号:DotNet开发跳槽

到了这里,关于.NET使用一行命令轻松生成EF Core项目框架的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Net Core中使用EF Core连接Mysql数据库

    Entity Framework Core的前身是微软提供并主推的ORM框架,简称EF,其底层是对ADO.NET的封装。EF支持SQLServer、MYSQL、Oracle、Sqlite等所有主流数据库。 首先是使用时的几个模式的整理及其理解: Code First:根据代码自动创建数据库表结构甚至是数据库,可以支持多库开发,代码较少冗余

    2024年01月24日
    浏览(41)
  • ASP.NET Core Web API入门之三:使用EF Core

    一般来讲我们做项目都会用实体类跟数据库实体进行关系对应,这样的好处方便我们维护、增删改查,并且可以减少SQL的编写,从而统一风格,那么 Entity Framework Core 就是很不错的ORM框架。 1、跨数据库支持能力强大,只需修改配置就可以轻松实现数据库切换。 2、提升了开发效

    2024年02月10日
    浏览(43)
  • .net项目开发-EF框架解决添加默认值问题

    最近开发.net项目,持久层用的是EF框架,也是第一次使用这个框架,用这个框架的好处就是基于实体的开发,就是当代码中实体创建完成可以使用EF提供的code frist模式去创建数据表,也解决了项目部署是写脚本创建数据库的问题。使用这个框架也出现了一个问题就是实体和表

    2024年02月13日
    浏览(27)
  • NET8 ORM 使用AOT SqlSugar 和 EF Core

    .Net8的本地预编机器码NET AOT,它几乎进行了100%的自举。微软为了摆脱C++的钳制,做了很多努力。也就是代码几乎是用C#重写,包括了虚拟机,GC,内存模型等等。而需要C++做的,也就仅仅是引导程序,本篇通过代码来看下这段至关重要的引导程序的运作模式。      SqlSugar已经

    2024年02月05日
    浏览(41)
  • .NET6.0 EF Core连接sql

    1、先导入四个包 Microsoft.EntityFrameworkCore Microsoft.EntityFrameworkCore.Relational Microsoft.EntityFrameworkCore.SqlServer Microsoft.EntityFrameworkCore.Tools 2、在程序包管理控制台执行 Scaffold-DbContext \\\"server=.;Integrated Security=true;database=DBStu\\\" Microsoft.EntityFrameworkCore.SqlServer -OutPutDir Models Models是你实体类安放

    2024年02月06日
    浏览(41)
  • EF Core实操,数据库生成实体,迁移

    大家好,我是行不更名,坐不改姓的宋晓刚,下面将带领大家进入C#编程EF Core数据库基础入门知识,如何连接数据库,如何编写代码,跟上我的步伐进入EF Core数据库下的世界。 家人们,如果有什么不懂,可以留言,或者加我联系方式,一起进入微软技术的开拓。 微信:153

    2024年01月22日
    浏览(30)
  • 在ASP.NET Core中轻松使用JwtBeare进行身份验证

    JwtBearer简介 首先要搞清楚什么是JwtBearer,JwtBearer是ASP.NET Core的OAuth 2.0 JWT Bearer身份验证提供程序。它提供了对JWT令牌进行验证的功能,然后允许将令牌中包含的声明(claims)用于用户身份验证和授权控制。 Json Web Token (JWT)是一种Web标准,用于在不同系统间传输数据。JWT是一种

    2024年02月04日
    浏览(37)
  • .NET6 + EF Core + MySQL 创建实体和数据库、EFCore 数据迁移

    接上期文章《.NET6项目连接数据库方式方法》,有人问了我几个问题,现在就这几个问题,拓展延申一下创建实体类、数据库。把ORM框架和数据迁移都写进去。 我的项目是在Linux上创建的,使用的是vscode开发工具远程开发。为了方便大家阅读和操作,我将项目down到我的本地电

    2024年02月05日
    浏览(38)
  • 如果用上以下几种.NET EF Core性能调优,那么查询的性能会飙升

    1、避免在循环中进行查询操作: 避免在循环中进行查询操作,可以将查询结果缓存到内存中,然后对内存中的数据进行操作,可以提高性能。这种方式适合集合数据量少的数据,否则利大于弊。   2、避免使用懒加载: 避免使用懒加载,因为每次访问导航属性都会触发额外

    2024年02月02日
    浏览(27)
  • .net core 生成项目时.json配置文件没有复制到输出目录

    在程序运行时默认加载.exe文件同文件夹下的配置文件,而不是项目中的.json配置文件,所以需要把.json配置文件设置到自动生成目录,即下图所示:

    2023年04月13日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包