Util应用框架快速入门(二)- Web Api 快速入门

Web Api 快速入门

Util应用框架 Web Api 快速入门

本节演示Util应用框架 Web Api 开发的基本流程.

准备

下载Util应用框架配套代码生成项目,如果已下载,请拉取最新代码进行更新.

生成项目基架

打开Util代码生成项目解决方案 Util.Generator.sln .

在这里插入图片描述

将项目 Util.Generators.Console 设置为启动项目.

在这里插入图片描述

Util.Generators.Console是一个控制台程序,只需修改几个简单配置,即可开始生成代码.

打开 appsettings.json 配置文件.

在这里插入图片描述

使用 Sql Server 生成代码

本小节使用 Sql Server 代码生成数据库.

appsettings.json 配置文件默认使用 Sql Server 数据库,连接字符串已经配置,如果与你的数据库设置不同,请修改.

按 F5 键启动控制台.

在这里插入图片描述

生成完成.

生成位置由 OutputPath 配置项 D:\Output 指定.

打开D盘,进入Output目录,可以看到生成的 Demo 项目.

在这里插入图片描述

使用 PostgreSql 生成代码

本小节使用 PostgreSql 代码生成数据库.

修改 appsettings.json 配置文件.

DbType : PgSql , 这个配置项指定使用的代码生成数据库类型.

TargetDbType: PgSql, 这个配置项指定项目使用的数据库类型.

ConnectionString: Server=127.0.0.1;User Id=admin;Password=admin;Database=Demo.Generator ,指定连接字符串

在这里插入图片描述

修改 appsettings.json 配置文件后,需要重新生成项目,否则可能不生效.

重新生成 Util.Generators.Console 项目, 按 F5 键启动控制台.

在这里插入图片描述

生成完成.

生成位置由 OutputPath 配置项 D:\Output 指定.

打开D盘,进入Output目录,可以看到生成的 Demo 项目.

在这里插入图片描述

使用 MySql 生成代码

本小节使用 MySql 代码生成数据库.

修改 appsettings.json 配置文件.

DbType : MySql , 这个配置项指定使用的代码生成数据库类型.

TargetDbType: MySql, 这个配置项指定项目使用的数据库类型.

ConnectionString: Server=127.0.0.1;User Id=root;Password=admin;Database=Demo.Generator;Port=3306;Charset=utf8 ,指定连接字符串

在这里插入图片描述

修改 appsettings.json 配置文件后,需要重新生成项目,否则可能不生效.

重新生成 Util.Generators.Console 项目, 按 F5 键启动控制台.

在这里插入图片描述

生成完成.

生成位置由 OutputPath 配置项 D:\Output 指定.

打开D盘,进入Output目录,可以看到生成的 Demo 项目.

在这里插入图片描述

运行示例项目

打开示例项目解决方案 Demo.sln.

在这里插入图片描述

解决方案分层结构基于领域驱动设计(DDD)分层架构.

DDD分层架构包含大量构造块,对于大部分业务模块,手工编写这些构造块是枯燥而低效的,使用代码生成可以简化基础管道代码的编写.

如果你对DDD一无所知,可以把它们当成三层架构使用即可.

代码生成以机械的单表方式生成CRUD操作,如果你的业务较为复杂,在生成后立即修改它们.

你不应该依赖代码生成器,通常只在项目初期创建项目基架,后续变更仅生成代码片断并手工合并到你的项目,而不是完全覆盖.

查看代码生成质量

下面来看看生成的代码质量如何.

打开 Student 实体类.

在这里插入图片描述

每个实体,代码生成模板会创建两个文件,其中 .Base 结尾的文件用于放置属性,另一个放置业务方法.

对于简单的实体类,可能没有业务方法,你可以合并成一个文件.

在这里插入图片描述

可以看到生成的代码十分整洁,并已从必要的基类继承,还包含了注释和基础验证.

运行Web Api项目

打开 Demo.Api 项目下的 appsettings.Development 配置文件.

在这里插入图片描述

如果你的代码生成数据库以 .Generator结尾,会帮你创建默认的开发数据库连接字符串.

对于本示例项目,开发数据库名称默认为 Demo .

如果生成的连接字符串为空值,或需要修改参数,请自行配置连接字符串.

DefaultConnection 是Web Api项目的连接字符串, TestConnection 用于Web Api项目的集成测试.

在这里插入图片描述

按 F5 键 启动 Demo.Api 项目.

Util 使用 Entity Framework Core 作为主要的数据访问框架.

Web Api项目已经配置了数据库迁移,不必手工输入命令行,启动时会自动运行命令.

在这里插入图片描述

可以看到 Demo.Data.SqlServer 项目已经创建 Migrations 迁移目录.

数据库也已经创建 Demo 数据库.

如果使用其它数据库生成代码,则与相应的数据库保持一致,比如 Demo.Data.MySql .

在这里插入图片描述

数据迁移完成,将打开 Swagger 页面.

下面我们使用 Swagger 调用 Web Api 创建一个学生.

找到 POST /api/Student, 点击 Try it out 按钮.

在这里插入图片描述

输入下列Json数据, 点击 Execute 按钮.

{
  "name": "张三",
  "gender": 0,
  "age": 18,
  "birthday": "2023-10-19T06:53:55.469Z",
  "idCard": "123",
  "enabled": true
}

在这里插入图片描述

Swagger返回操作成功消息.

在这里插入图片描述

查询数据库 Student 表,可以看到已经插入成功.

运行其它数据库生成代码的操作类似.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值