Coding & Refactoringlow risk

aspnet-minimal-api-openapi

Create ASP.NET Minimal API endpoints with proper OpenAPI documentation

github/awesome-copilot·skills/aspnet-minimal-api-openapi/SKILL.md
100/ 100质量分

导入这个 Skill

选择你的 coding agent,复制项目级或个人级安装命令。

固定到平台收录的 commit
导入当前项目.agents/skills/aspnet-minimal-api-openapi
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/aspnet-minimal-api-openapi -a codex -y
导入个人环境~/.agents/skills/aspnet-minimal-api-openapi
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/aspnet-minimal-api-openapi -a codex -g -y
手动放置目录.agents/skills/aspnet-minimal-api-openapiOfficial docs ↗
导入当前项目.claude/skills/aspnet-minimal-api-openapi
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/aspnet-minimal-api-openapi -a claude-code -y
导入个人环境~/.claude/skills/aspnet-minimal-api-openapi
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/aspnet-minimal-api-openapi -a claude-code -g -y
手动放置目录.claude/skills/aspnet-minimal-api-openapiOfficial docs ↗
导入当前项目.agents/skills/aspnet-minimal-api-openapi
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/aspnet-minimal-api-openapi -a github-copilot -y
导入个人环境~/.copilot/skills/aspnet-minimal-api-openapi
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/aspnet-minimal-api-openapi -a github-copilot -g -y
手动放置目录.agents/skills/aspnet-minimal-api-openapiOfficial docs ↗
导入当前项目.agents/skills/aspnet-minimal-api-openapi
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/aspnet-minimal-api-openapi -a cursor -y
导入个人环境~/.cursor/skills/aspnet-minimal-api-openapi
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/aspnet-minimal-api-openapi -a cursor -g -y
手动放置目录.agents/skills/aspnet-minimal-api-openapiOfficial docs ↗
导入当前项目.agents/skills/aspnet-minimal-api-openapi
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/aspnet-minimal-api-openapi -a gemini-cli -y
导入个人环境~/.gemini/skills/aspnet-minimal-api-openapi
npx skills add https://github.com/github/awesome-copilot/tree/0aaced533251f5b86c69dfbc5e55db74c4b4d1af/skills/aspnet-minimal-api-openapi -a gemini-cli -g -y
Native Gemini CLIgemini skills install https://github.com/github/awesome-copilot.git --scope workspace --path skills/aspnet-minimal-api-openapi
手动放置目录.agents/skills/aspnet-minimal-api-openapiOfficial docs ↗
⚠ 安装命令使用开源 skills CLI。执行前请检查来源、脚本和权限。
# ASP.NET Minimal API with OpenAPI

Your goal is to help me create well-structured ASP.NET Minimal API endpoints with correct types and comprehensive OpenAPI/Swagger documentation.

## API Organization

- Group related endpoints using `MapGroup()` extension
- Use endpoint filters for cross-cutting concerns
- Structure larger APIs with separate endpoint classes
- Consider using a feature-based folder structure for complex APIs

## Request and Response Types

- Define explicit request and response DTOs/models
- Create clear model classes with proper validation attributes
- Use record types for immutable request/response objects
- Use meaningful property names that align with API design standards
- Apply `[Required]` and other validation attributes to enforce constraints
- Use the ProblemDetailsService and StatusCodePages to get standard error responses

## Type Handling

- Use strongly-typed route parameters with explicit type binding
- Use `Results<T1, T2>` to represent multiple response types
- Return `TypedResults` instead of `Results` for strongly-typed responses
- Leverage C# 10+ features like nullable annotations and init-only properties

## OpenAPI Documentation

- Use the built-in OpenAPI document support added in .NET 9
- Define operation summary and description
- Add operationIds using the `WithName` extension method
- Add descriptions to properties and parameters with `[Description()]`
- Set proper content types for requests and responses
- Use document transformers to add elements like servers, tags, and security schemes
- Use schema transformers to apply customizations to OpenAPI schemas