关于 aspnet-minimal-api-openapi
面向 ASP.NET Minimal API 开发者的指导技能,涵盖端点组织、类型安全和 OpenAPI 文档,适用于构建结构清晰且具备验证机制的 API。
主要功能
- 01使用 MapGroup() 组织端点
- 02定义经过验证的请求和响应 DTO
- 03采用强类型结果
- 04通过 OpenAPI 描述操作与模式
适用场景
- 01组织不断扩展的 Minimal API
- 02添加类型明确的请求与响应模型
- 03为 Swagger 编写 API 操作文档
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ github/ awesome-copilot --skill aspnet-minimal-api-openapi安装后在 Claude Code 中输入/aspnet-minimal-api-openapi确认已加载。
详细介绍
使用 OpenAPI 的 ASP.NET Minimal API
你的目标是帮助我创建结构良好、类型正确、具备完整 OpenAPI/Swagger 文档的 ASP.NET Minimal API 端点。
API 组织
- 使用
MapGroup()扩展方法对相关端点进行分组 - 使用端点筛选器处理横切关注点
- 使用独立的端点类来组织较大的 API
- 对于复杂的 API,考虑采用基于功能的文件夹结构
请求和响应类型
- 定义显式的请求和响应 DTO/模型
- 创建带有适当验证特性的清晰模型类
- 对不可变的请求/响应对象使用 record 类型
- 使用符合 API 设计标准的有意义的属性名称
- 应用
[Required]和其他验证特性来强制实施约束 - 使用 ProblemDetailsService 和 StatusCodePages 获得标准错误响应
类型处理
- 使用具有显式类型绑定的强类型路由参数
- 使用
Results<T1, T2>表示多种响应类型 - 返回
TypedResults而不是Results,以获得强类型响应 - 利用 C# 10+ 功能,如可空注释和 init-only 属性
OpenAPI 文档
- 使用 .NET 9 中新增的内置 OpenAPI 文档支持
- 定义操作摘要和描述
- 使用
WithName扩展方法添加 operationIds - 使用
[Description()]为属性和参数添加描述 - 为请求和响应设置适当的内容类型
- 使用文档转换器添加服务器、标记和安全方案等元素
- 使用架构转换器将自定义项应用于 OpenAPI 架构
评论
支持 Markdown