aspnet-minimal-api-openapi について
ASP.NET Minimal API の開発者向けに、エンドポイントの整理、型安全性、OpenAPI ドキュメント作成を案内するスキルです。検証機能を備えた構造的な API 設計を支援します。
主な機能
- 01MapGroup() によるエンドポイント整理
- 02検証付きリクエスト・レスポンス DTO
- 03型付き結果の利用
- 04OpenAPI による操作とスキーマの記述
活用シーン
- 01拡張する Minimal API の構成
- 02型を明示したモデルの追加
- 03Swagger 用 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>を使用する - 厳密に型指定されたレスポンスには
Resultsの代わりにTypedResultsを返す - null 許容注釈や init 専用プロパティなどの C# 10 以降の機能を活用する
OpenAPI ドキュメント
- .NET 9 で追加された組み込みの OpenAPI ドキュメントサポートを使用する
- 操作の概要と説明を定義する
WithName拡張メソッドを使用して operationId を追加する[Description()]でプロパティとパラメーターに説明を追加する- リクエストとレスポンスに適切なコンテンツタイプを設定する
- ドキュメントトランスフォーマーを使用して、サーバー、タグ、セキュリティスキームなどの要素を追加する
- スキーマトランスフォーマーを使用して OpenAPI スキーマにカスタマイズを適用する
コメント
Markdown 対応