🚀 快速安装

复制以下命令并运行,立即安装此 Skill:

npx @anthropic-ai/skills install github/awesome-copilot/aspnet-minimal-api-openapi

💡 提示:需要 Node.js 和 NPM

ASP.NET Minimal API with OpenAPI

您的目标是帮助我创建结构良好、类型正确且带有全面 OpenAPI/Swagger 文档的 ASP.NET Minimal API 端点。

API 组织

  • 使用 MapGroup() 扩展方法对相关端点进行分组
  • 对横切关注点使用端点过滤器
  • 使用独立的端点类来构建大型 API
  • 对于复杂的 API,考虑使用基于功能(feature)的文件夹结构

请求和响应类型

  • 定义显式的请求和响应 DTO/模型
  • 创建带有正确验证属性的清晰模型类
  • 对不可变的请求/响应对象使用记录类型
  • 使用符合 API 设计标准的有意义的属性名称
  • 应用 [Required] 和其他验证属性来强制执行约束
  • 使用 ProblemDetailsService 和 StatusCodePages 来获得标准的错误响应

类型处理

  • 使用具有显式类型绑定的强类型路由参数
  • 使用 Results<T1, T2> 表示多种响应类型
  • 返回 TypedResults 而不是 Results 以获得强类型响应
  • 利用 C# 10+ 特性,如可为空注解和仅初始化属性

OpenAPI 文档

  • 使用 .NET 9 中添加的内置 OpenAPI 文档支持
  • 定义操作的摘要和描述
  • 使用 WithName 扩展方法添加操作标识符
  • 使用 [Description()] 为属性和参数添加描述
  • 为请求和响应设置适当的内容类型
  • 使用文档转换器添加诸如服务器、标签和安全方案等元素
  • 使用模式转换器对 OpenAPI 模式进行自定义

📄 原始文档

完整文档(英文):

https://skills.sh/github/awesome-copilot/aspnet-minimal-api-openapi

💡 提示:点击上方链接查看 skills.sh 原始英文文档,方便对照翻译。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。