mcpField
A
aspnet-minimal-api-openapi

aspnet-minimal-api-openapi

github.com/midudev開発7.0k57 回インストール2 週間前に更新
リポジトリ

aspnet-minimal-api-openapi について

aspnet-minimal-api-openapiは、型付きリクエスト/レスポンスモデルとOpenAPIドキュメントを備えた、構造的なASP.NET Minimal APIエンドポイントの作成を支援するスキルです。エンドポイント構成、検証、レスポンス型、ドキュメントのカスタマイズを扱います。

主な機能

  1. 01MapGroup()によるエンドポイントのグループ化
  2. 02型付きリクエスト/レスポンスモデルの定義
  3. 03検証と標準エラーレスポンスの適用
  4. 04TypedResultsによる型付きレスポンス
  5. 05OpenAPIスキーマの記述とカスタマイズ

活用シーン

  1. 01関連するMinimal APIエンドポイントの構成
  2. 02検証付きAPIリクエスト/レスポンスDTOの設計
  3. 03OpenAPIへの操作説明と識別子の追加
  4. 04OpenAPIドキュメントとスキーマのカスタマイズ

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/midudev/autoskills --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 スキーマにカスタマイズを適用する

コメント