VS2022 webapi SQLite EFcore 最简单部署

这篇具有很好参考价值的文章主要介绍了VS2022 webapi SQLite EFcore 最简单部署。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、我有一个sqlite单文件数据库,里面有一张表material,我想把这张表的数据,让c# webapi程序从服务器上输出成json,让客户端可以查询到数据。

VS2022 webapi SQLite EFcore 最简单部署

二、使用VS2022,安装ASP.net相关开发组件。

VS2022 webapi SQLite EFcore 最简单部署

三、VS2022中新建一个项目,项目的类型是webapi,用的是ASP.NET Core技术。

VS2022 webapi SQLite EFcore 最简单部署

产生项目的时候,我们选择一个最小的mini项目,连控制层也不要了。

VS2022 webapi SQLite EFcore 最简单部署

项目自动创建完成后,文件非常干净:

VS2022 webapi SQLite EFcore 最简单部署

四、我们要使用微软提供的数据库ORM工具EntityFramework,它可以把数据库映射成程序对象,我们写程序时直接拿来使用就好。EntityFramework有2种,一个是EntityFramework6.4,使用在WINDOWS的平台,它提供ADO实体类的可视化设计器,可以在图像界面很方便的产生程序对象;第二个是EntityFrameworkCore7,它是微软向跨平台开发扩展的ORM工具,但它没有可视化的设计器,还好微软提供了一个tool工具类,我们可以用一条命令把映射的数据库对象直接生成。

博主发现用第一种配置SQLite产生映射对象很难,而第二种方式只需要几分钟。那么,我们就在项目中添加EntityFrameworkCore和工具类来连接上SQLite数据库。在NuGet中安装好就行。

Microsoft.EntityFrameworkCore.Sqlite,Microsoft.EntityFrameworkCore.Tools

VS2022 webapi SQLite EFcore 最简单部署

然后,我们用一条命令,让EFcore从sqlite数据库给我生成数据库的映射对象出来。

Scaffold-DbContext "Data Source=D:\webapi\car.db" Microsoft.EntityFrameworkCore.Sqlite -OutputDir Models -UseDatabaseNames -DataAnnotations -Force

它把全部的数据库表映射成了对象,统统都给我弄到了项目Models目录中。

VS2022 webapi SQLite EFcore 最简单部署

这里是tool工具类的这条命令的详细说明:

在 工具-NuGet包管理器-程序包管理控制台 输入

Install-Package Microsoft.EntityFrameworkCore.Tools //安装管理工具

PM> Scaffold-DbContext "Data Source=F:\XQX\个人项目\C#学习\SQLiteStudio.db" Microsoft.EntityFrameworkCore.Sqlite -OutputDir Models -UseDatabaseNames -DataAnnotations -Force

-OutputDir *** 实体文件所存放的文件目录

-ContextDir *** DbContext文件存放的目录

-Context *** DbContext文件名

-Schemas *** 需要生成实体数据的数据表所在的模式

-Tables *** 需要生成实体数据的数据表的集合

-DataAnnotations

-UseDatabaseNames 直接使用数据库中的表名和列名(某些版本不支持)

-Force 强制执行,重写已经存在的实体文件

五、我们改了一点原程序,把我们的material表返回给api加上。

VS2022 webapi SQLite EFcore 最简单部署

执行一下,API运行正常。返回了material表的数据。

VS2022 webapi SQLite EFcore 最简单部署

六、我们把这个程序功能,做成单独的执行程序来运行,首先弄一下发布功能。

VS2022 webapi SQLite EFcore 最简单部署
VS2022 webapi SQLite EFcore 最简单部署

到发布的目录看看,VS2022在目录中产生了好多类库文件,我们可以选择发布成单个的文件,这样简单了好多:

VS2022 webapi SQLite EFcore 最简单部署
VS2022 webapi SQLite EFcore 最简单部署

七、执行程序,提示有端口可以访问了。

VS2022 webapi SQLite EFcore 最简单部署

打开浏览器,访问这个API的地址,我们得到了SQLite数据库material表中的json数据。这样我们为前后端彻底分离做好了准备。

VS2022 webapi SQLite EFcore 最简单部署

最后,这个程序想要换一下端口,可以用这行代码:

builder.WebHost.UseUrls(new[] { "http://*:8090", "https://*:8091" });
VS2022 webapi SQLite EFcore 最简单部署
VS2022 webapi SQLite EFcore 最简单部署

最后,基于.net7 微软官方WEBAPI的使用说明:

https://learn.microsoft.com/en-us/aspnet/core/fundamentals/minimal-apis?view=aspnetcore-7.0文章来源地址https://www.toymoban.com/news/detail-455997.html

到了这里,关于VS2022 webapi SQLite EFcore 最简单部署的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • VS2022部署/安装 QT(以5.14.2为例)

    一,下载并安装Qt Visual Studio Tools   点击扩展,并选择管理扩展                                                二,搜索QT并下载Qt Visual Studio Tools 注意:如果wifi下载很慢,甚至不动。可以尝试用 热点 下载好后,关闭vs2022,它会自动弹出安装界面点击Modify 进行安装 如

    2024年02月16日
    浏览(31)
  • [com]使用VS2022创建一个自定义com组件--C++

    本文是在《C++ COM组件的编写》的基础上做了一些细节上的增添,可以让像我这样的资质驽钝者可以减少一点学习障碍。 新建项目分两步即可 1.创建新项目,选择动态链接库(dll) 2. 填写com组件名称,修改项目路径,最后创建 创建后文件组织如图所示, framework.h和pch.h,pch.cpp不用

    2024年02月11日
    浏览(43)
  • VS2022 安装教程及第一个C#代码(社区版超详细)

    找到VS下载官网 https://visualstudio.microsoft.com/zh-hans/downloads/ 下载社区版,直接点击下载保存即可 点击Community 下的免费下载,直接下载保存到文件夹中 下载后只有VisualStudioSetup.exe,VisualStudio文件夹是新建的文件夹,准备存放稍后安装的VisualStudio(大家根据自身习惯选择即可)

    2024年02月04日
    浏览(27)
  • winodos下使用VS2022编译eclipse-paho.mqtt.c并演示简单使用的 demo

    本文演示C语言如何使用 eclipse-paho.mqtt.c库,包含自行编译库的步骤或者下载编译好的文件。 到官网选择C版本的paho源码进行下载 Eclipse Paho | The Eclipse Foundation 或者到下述连接下载 Releases · eclipse/paho.mqtt.c · GitHub a. cmake(可参考文章【 windows下cmake的小白级入门使用教程 (hello

    2024年02月08日
    浏览(33)
  • 在人工智能时代,Django + 简单的 HTML + Whisper + mixtral-8x7b-instruct + SQLite 实现了一个 TODO应用

    人工智能TODO应用程序演示https://ivan-tolkunov–surukoto-run.modal.run/(警告:该应用程序可能需要长达30秒才能启动)。所有数据在不活动5分钟后重置。试着告诉它:“添加彩虹的每一种颜色”,然后“标记所有提到绿色和紫色之间的待办事项”和“清理完成的待办事项。” 每个人

    2024年01月20日
    浏览(31)
  • 建立一个vs2010的简单的c语言工程文件工程项目

    因为今天学习数据老师叫我们写一个工程文件,但是似乎并没有学过工程文件是什么,所以我写该文章简述一下我对于工程文件究竟是什么,究竟应该怎么写出一个合格的工程文件的理解。(如有错误,请稍原谅QAQ) 根据我写keil5的经验,一个合格的工程文件是 适合移植的(

    2024年02月09日
    浏览(33)
  • Openssl数据安全传输平台003:Protobuf-3.17.2的编译与部署:Windows:cmake+VS2022/ Centos7/8: make

    https://github.com/Chufeng-Jiang/OpenSSL_Secure_Data_Transmission_Platform/tree/main/Protobuf 0.2.1 Centos7 https://www.bilibili.com/video/BV1we411R7sS/?vd_source=3353f83539e46042d8cf76efb177a8e4 06-Protobuf在Centos7系统上的安装:版本protobuf3.17.2 0.2.2 windows https://www.bilibili.com/video/BV1rw411X7mY/?spm_id_from=333.999.0.0vd_source=3353f8353

    2024年02月07日
    浏览(36)
  • 学习如何在VS Code中创建一个Golang/Go项目,并运行一个简单的Golang程序

     学习如何在VS Code中创建一个Golang项目,并运行一个简单的Golang程序。 在VS Code 手动输入命令创建一个Golang项目 在VS Code 不输入命令创建一个Golang项目 1. 在VS Code 手动输入命令创建一个Golang项目 步骤1:在VS Code中创建一个新文件夹,用于存放Golang项目文件。 步骤2:打开VS

    2024年02月14日
    浏览(47)
  • netcore mvc efcore 简单框架搭建+增删改查

    该例子使用的数据库是 mysql ;.net core 框架,版本( sdk )是3.1。 一:创建个net core 版本的mvc  目标框架选   net core3.1  二:项目创建好之后  先安装今天要使用到的nuget包(下载的包最好也是3.1版本的) Microsoft.EntityFrameworkCore; Microsoft.EntityFrameworkCore.Design; Microsoft.EntityF

    2023年04月19日
    浏览(28)
  • .net 6 efcore一个model映射到多张表(非使用IEntityTypeConfiguration)

    现在有两张表,结构一模一样,我又不想创建两个一模一样的model,就想一个model映射到两张表 废话不多说直接上代码 安装依赖包 创建model 创建DBContext 我们需要使用tablename 动态指定表名,因此需要在DBContext中添加这个属性 创建DynamicModelCacheKeyFactory 继承IModelCacheKeyFactory 依赖

    2024年02月14日
    浏览(25)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包