Start Debugging

タグ: minimal-apis

10 件

ASP.NET Core 11 の minimal API エンドポイントから型付き Results<T1, T2> ユニオンを返す方法
ハンドラーの戻り値の型を Results<Ok<T>, NotFound> と宣言し、TypedResults.Ok / TypedResults.NotFound を返します。ユニオンはハンドラーが宣言したものだけを返すことをコンパイル時にチェックし、OpenAPI に対して自己記述するため、.Produces を手書きする必要がありません。非同期ハンドラー、6 型の上限、ASP.NET Core 11 でのテストを扱います。
ASP.NET Core 11 で minimal API を手動の検証チェックから組み込み検証へ移行する
ASP.NET Core 11 の minimal API ハンドラーにある手書きの if チェックを、DataAnnotations とソースジェネレーターに基づく組み込みバリデーターへ置き換えるためのステップバイステップの移行ガイドです。何が壊れるか、どの手動ルールが移植できてどれができないか、そして 400 ProblemDetails の契約が同一のままであることをどう検証するかを扱います。
ASP.NET Core 11 で IProblemDetailsService を使って Minimal API のバリデーションエラーレスポンスをカスタマイズする方法
AddProblemDetails に CustomizeProblemDetails コールバックを渡して、ASP.NET Core 11 の組み込み Minimal API バリデーションが返す 400 の形を作り直します。traceId を追加したり、title を書き換えたり、400 を 422 に切り替えたり、カスタム IProblemDetailsWriter で完全に制御したりできます。
ASP.NET Core 11 の minimal API バリデーション vs FluentValidation: どちらを選ぶべきか
ASP.NET Core 11 で属性で表現できる同期的なルールには、ソースジェネレーター生成の組み込みバリデーションを使いましょう。データベースを参照する非同期ルール、複雑なフィールド間ロジック、あるいはバリデーションをドメインモデルの外に保ちたい場合は FluentValidation を選びます。
ASP.NET Core 11 で MapGroup を使って minimal API のエンドポイントを整理する方法
ASP.NET Core 11 で MapGroup を使って minimal API を構造化するための完全ガイド。リソースごとのエンドポイントモジュールを拡張メソッドとして書く方法、ネストしたグループ、共有フィルターと認証、ルートパラメーター付きプレフィックス、OpenAPI タグ、そして人を驚かせるフィルターの順序ルールを解説します。
ASP.NET Core 11 でコントローラーなしに Minimal API のリクエストボディを検証する方法
ASP.NET Core 11 には Minimal API 向けの組み込み検証があります。AddValidation を呼び出し、リクエストの record を DataAnnotations で注釈すると、ソースジェネレーターがバインド済みモデルを検証し、ハンドラーが実行される前に 400 ProblemDetails を返します。コントローラー不要、FluentValidation 不要、手動チェック不要です。