.net core 创建WebAPI以及使用EF DBFirst框架使用方法与疑问解答(.net 6)

这篇具有很好参考价值的文章主要介绍了.net core 创建WebAPI以及使用EF DBFirst框架使用方法与疑问解答(.net 6)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

EF语法包:

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

生成实体模型:

Scaffold-DbContext "Server=.;Database=h;User ID=admin;Password=123;Trusted_Connection=False;" Microsoft.EntityFrameworkCore.SqlServer

修改实体模型:

Scaffold-DbContext Server=.;Database=h;User ID=admin;Password=123;Integrated Security=True" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Model -Force

把生成的实体和上下文都输出到某个文件夹命令

Scaffold-DbContext "Server=.;Database=h;User ID=admin;Password=123;Trusted_Connection=False;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir {文件夹名}

增加JSON格式脚手架:

Install-Package Microsoft.AspNetCore.Mvc.NewtonsoftJson

若想增加某个版本json脚手架,需要加入后缀如:

Install-Package Microsoft.AspNetCore.Mvc.NewtonsoftJson -version 6.0

问题与解决方案:

1、问题:

Your startup project 'XXX' doesn't reference Microsoft.EntityFrameworkCore.Design. This package is required for the Entity Framework Core Tools to work. Ensure your startup project is correct, install the package, and try again.

解决方案:

给控制器层项目添加包:

Install-Package Microsoft.EntityFrameworkCore.Design

2、问题:

Could not load assembly 'XXX.Model'. Ensure it is referenced by the startup project 'XXX_API'.

解决方案:

此报错是因为EF实体生成的那层没有被其他层引用,将项目引用设置好即可。

3、问题:

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

解决方案:

在数据库在登录时,更改选项的连接属性,解决方案、信任服务器证书选项都选择或者都不选择,不能只选一个,在VS中连接字符串最后加入以下代码

 Encrypt=True;TrustServerCertificate=True;

4、问题:去除生成实体类时报的警告(强迫症患者使用)

解决方案:

删除生成的上下文实体类中方法

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) 
#warning To protect potentially sensitive information in your connection string, you should #move it out of source code. You can avoid scaffolding the connection string by using the #Name= syntax to read it from configuration - see https://go.microsoft.com/fwlink/?#linkid=2131148. For more guidance on storing connection strings, see #http://go.microsoft.com/fwlink/?LinkId=723263. 
=> optionsBuilder.UseSqlServer("Server=.;Database=h;User ID=admin;Password=123;Encrypt=True;TrustServerCertificate=True;");

然后在此类中添加方法:

public FreigthBillContext(DbContextOptions<FreigthBillContext> options) : base(options) { }

正常来说这是一个默认就有的带参构造函数,以防万一可以搜索一下方法名来确定是否存在,重点在后面带一个base(options)

在Program.cs中添加代码:

builder.Services.AddDbContext<FreigthBillContext>(x=>x.UseSqlServer(builder.Configuration.GetConnectionString("FreigthBill")));

注意UseSqlServer这个方法只有安装下面这个包后才可正常使用,否则会报错找不到这个方法

Install-Package Microsoft.EntityFrameworkCore.SqlServer

(此语句就是第一部分安装EF包中第一条安装语句)文章来源地址https://www.toymoban.com/news/detail-604640.html

到了这里,关于.net core 创建WebAPI以及使用EF DBFirst框架使用方法与疑问解答(.net 6)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • .Net Core6.0 WebAPI项目框架搭建六:仓储模式+导入SqlSuagr

     完整框架项目源码地址:https://download.csdn.net/download/yigu4011/87788956?spm=1001.2014.3001.5503 仓储(Respository)是对数据库访问的一个封装 解决方案新建Respository文件夹,新建类库Web.Core.IRepository,Web.Core.Repository 解决方案新建Services文件夹,新建类库Web.Core.IServices,Web.Core.Services 在类库

    2024年01月18日
    浏览(51)
  • Net Core中使用EF Core连接Mysql数据库

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

    2024年01月24日
    浏览(47)
  • asp.net core框架搭建1-搭建webapi,对数据增删改查接口模板(附源码)

    作者:xcLeigh 文章地址:https://blog.csdn.net/weixin_43151418/article/details/131458922 asp.net core 框架搭建2-搭建webapi ,本文章介绍asp.net core webapi框架搭建,然后开发增删改查和工具接口,将一步步带着大家,实现目标。所有操作过程将展现在本篇文章,下面咋们一起来实现它吧。 asp.ne

    2024年02月13日
    浏览(44)
  • ASP.NET Core Web API入门之三:使用EF Core

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

    2024年02月10日
    浏览(50)
  • .Net初学 创建一个巨简单的.Net7 WebApi后端框架

    visual studio 2022 以下简称vs    Visual Studio安装指南_visual studio安装教程_技术人小柒的博客-CSDN博客 sqlserver 2022 以下简称mssql        SQL Server2022 Express和SSMS下载安装教程(超详细) (baidu.com) redis Redis下载安装图文教程(Windows版_超详细)_windows redis下载_Leeway啊樺的博客-CSDN博客

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

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

    2024年02月05日
    浏览(49)
  • .NET Core WebAPI中使用Swagger(完整教程)

    1.1-什么是Swagger? Swagger是一个规范且完整的框架,用于生成、描述、调试和可视化Restfull风格的Web服务。 Swagger的目标是对Rest API定义一个标准且和语言无关的接口,可以让人和计算机拥有无需访问源码、文档或网络流量监控就可以发现和连接服务的能力。当通过Swagger进行正确

    2024年02月14日
    浏览(27)
  • NET Core 6.0 webapi 简单使用+连接数据库

    ASP.NET core NET core 6.0 如何使用 在 Program.cs里面 添加对应注释 效果: Microsoft.EntityFrameworkCore.Sqlite Microsoft.EntityFrameworkCore.Sqlite.Core Newtonsoft.Json:用于Json格式转换 添加测试Api Tips:这里用到ORM查询语法 EntityFramework EF 常用增删改查语句 运行结果

    2024年02月09日
    浏览(35)
  • .NET Core WebAPI中使用swagger版本控制,添加注释

    在代码中添加注释 在项目属性中生成API文档 在Program中注册Swagger服务并配置文档信息

    2024年02月20日
    浏览(37)
  • .net 温故知新【11】:Asp.Net Core WebAPI 入门使用及介绍

    在Asp.Net Core 上面由于现在前后端分离已经是趋势,所以asp.net core MVC用的没有那么多,主要以WebApi作为学习目标。 我使用的是VS2022, .Net 7版本。 在创建界面有几项配置: 配置Https 启用Docker 使用控制器 启用OpenAPI支持 不使用顶级语句 其中配置Https 是WebApi是否使用https协议,启

    2024年02月07日
    浏览(33)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包