首页 / .NET 6 / 正文

.NET 6 Minimal API程序中使用EF Core访问SQLite数据库实例教程

53 发布于: 2022-01-10 16:27 读完约需 5 分钟

概述

如今.NET 6发布已经有一段时间了,在生产环境运行的基于.NET 6的项目也趋于稳定,没有大的Bug。

在.NET 6发布之前,我已向大家分享了关于《创建API服务最小只要4行代码!!!尝新体验ASP.NET Core 6预览版本中发布的最小Web API(minimal APIS)新特性》

在正式生产环境中,也使用了.NET 6的Minimal API来开发微服务,无论是从编码速度还是运行效率上来说,表现都很不错。

今天,就为大家分享一下在.NET 6 Minimal API应用程序中,如何使用Entity Framework Core(EF Core)连接并操作SQLite数据库。

准备工作

本教程.NET 6示例程序需做如下准备工作:

开发工具

Visual Studio 2022 (或者VS Code,Rider 2021.3)

数据库管理工具

Navicat(或DataGrip)

创建原语数据表的脚本

插入示例数据:

创建项目

本教程以Visual Studio创建项目为例。

打开Visual Studio的起始窗口,选择ASP.NET Core Web API项目模板,如下图:

配置新项目窗口中,分别配置如下信息:

1:项目名称
2:项目存储的磁盘路径
3:解决方案名称

其他信息窗口中,配置如下信息:

框架:选择.NET 6.0
身份验证类型:选择无
配置HTTPS:不勾选
启用Docker:不勾选
使用控制器(取消选中以使用最小API):不勾选
启用OpenAPI支持:勾选

确认配置后,单击创建按钮,Visual Studio将为我们创建一个.NET 6 Minimal Web API项目。

安装NuGet程序包

本教程,基于.NET 6 Minimal Web API使用EF Core操作SQLite数据库需要使用到如下的NuGet程序包:

  • Microsoft.EntityFrameworkCore.Sqlite
  • Carter

在Visual Studio中,打开NuGet程序包管理器,分别安装这两个NuGet程序包,如下:

创建项目文件夹

在项目中分别创建如下的目录:

  • DataAccess:存放数据访问有关的代码文件
  • Db:存放SQLite数据库文件
  • Models:存放实体模型
  • Modules:存放不同模块的接口文件

编写示例代码

创建实体模型

Models文件夹中创建User.cs文件,用于映射数据表da_user,代码如下:

创建数据库上下文

DataAccess文件夹中创建MyDbContext.cs文件,用于配置数据库访问上下文,代码如下:

创建服务接口模块

Modules文件夹中创建UserModule.cs文件,用于模块化组织接口服务,代码如下:

注:本教程使用到了Carter这个库,具体使用请参考《Carter—模块化组织和管理.NET 6 Minimal API应用程序接口服务的利器!!!》

配置Program.cs文件

最后,我们需要在Program.cs文件中注册一些服务,比如数据库上下文MyDbContextCarter等等,示例代码如下:

运行查看效果

至此,我们的示例程序就写好了,运行项目。在浏览器打开项目地址(比如我的:http://localhost:5197/swagger/index.html),可看到如下的Swagger界面,说明运行成功:

向SQLite数据表写入数据

接下来,我们演示如下使用EF Core向SQLite数据表中写入数据。

打开UserModule.cs文件,在其中添加创建用户的路由映射及方法,如下:

重新运行项目,访问地址:http://localhost:5197/user/create

如果得到如下的结果,表示数据成功被写入到SQLite数据表:

版权声明:本作品系原创,版权归码友网所有,如未经许可,禁止任何形式转载,违者必究。

上一篇: Carter--模块化组织和管理.NET 6 Minimal API应用程序接口服务的利器!!!

本文永久链接码友网 » .NET 6 Minimal API程序中使用EF Core访问SQLite数据库实例教程

分享扩散:

发表评论

登录用户才能发表评论, 请 登 录 或者 注册