2026-09-05 blazoraspnetcoredotnet-11 Blazor のレンダーモードとは何か、どれが自分のコンポーネントを実行しているのか レンダーモードは Razor コンポーネントがどこで実行され、インタラクティブになるかどうかを決めます。.NET 11 の 4 つのモード、コンポーネントが何を継承するかを決める伝播ルール、そして実行時にどのモードが適用されたかを教えてくれる RendererInfo と AssignedRenderMode を解説します。
2026-09-05 ef-coredotnet-11csharp EF Core のインターセプターとは何か、どんなときに必要か EF Core のインターセプターは、コマンドの実行や SaveChanges といった操作の前後で EF が呼び出すクラスで、観察するだけでなく操作を変更したり抑制したりできます。EF Core 11 の 7 つのインターセプトポイント、登録とライフタイムの規則、そしてクエリフィルターやログ出力のほうが適している場面をまとめます。
2026-08-27 dotnetcsharpaspnetcore Blazor コンポーネントで見出しレベル (h1-h6) を実行時に決めてレンダリングする方法 Razor にはタグ名を変数にする構文がなく、DynamicComponent はコンポーネント型しかレンダリングできません。BuildRenderTree をオーバーライドして builder.OpenElement(0, $"h{level}") を呼び出します。属性の受け渡し、タグ名を DOM に渡す前に範囲制限すべき理由、レベルを変えると @key を付けても要素が DOM から作り直される理由、カスケード値による自動レベル付けまで解説します。
2026-08-20 aspnetcoredotneterror-handling ASP.NET Core の UseExceptionHandler が 413 を 500 に変えなくなります 2026-08-19 に dotnet/aspnetcore の main へ取り込まれた PR により、ExceptionHandlerMiddleware は BadHttpRequestException.StatusCode を 500 で上書きせず尊重するようになります。
2026-08-20 errorsdotnetdotnet-11 修正: minimal API で [FromForm] Dictionary<string, string> が常に null になる minimal API の [FromForm] Dictionary は空のプレフィックスでバインドされるため、フォームキーは metadata[key] ではなく [key] にする必要があります。クラスで包めば読みやすい名前を保てます。
2026-08-19 errorsswashbuckleopenapi 修正: Swashbuckle.AspNetCore を v9 に更新すると OpenAPI 3.0 を出力できない Swashbuckle 8 以降は openapi 3.0.1 ではなく 3.0.4 を出力し、パッチバージョン用の OpenApiSpecVersion は存在しません。変更の理由と、ツールが期待する文字列に固定する 4 つの方法を解説します。
2026-08-19 errorsopenapiswagger .NET 11 へのアップグレード後に Swagger UI が Unable to render this definition と表示される問題の解決 ASP.NET Core 11 は既定で openapi 3.2.0 を出力し、10.1.5 未満の Swagger UI はこれを拒否します。Swashbuckle.AspNetCore.SwaggerUI を更新するか、OpenApiVersion を OpenApi3_1 に固定してください。
2026-08-16 csharpdotnetdotnet-11 JavaScript 相互運用なしで Blazor コンポーネントからファイルをダウンロードする方法 downloadFileFromStream の JS モジュールは不要です。TypedResults.File を返す minimal API エンドポイントを指す download 属性付きのアンカーをレンダリングするか、AntiforgeryToken を含むプレーンな HTML フォームを POST します。download 属性が Blazor の拡張ナビゲーションによるクリック横取りを防ぐ理由、data-enhance がファイルを黙って捨てる理由、cookie と bearer の落とし穴も解説します。
2026-08-15 comparisoncsharpdotnet ASP.NET Core 11 の OpenAPI ドキュメントにおける Scalar と Swagger UI の比較 Scalar は gzip 圧縮後 1.02 MiB の JavaScript と、はるかに優れたリクエストビルダーを配信します。Swagger UI は 514 KiB で、.NET 11 が既定で出力する OpenAPI 3.2 をレンダリングします。実測したペイロード、3.2 対応の差、両者のエンドポイントルーティング、そして決め手になる認証まわりの詳細をまとめます。
2026-08-15 comparisondotnetdotnet-11 .NET 11 のレスポンス圧縮における Zstandard と Brotli と Gzip の比較 .NET 11 の動的な API レスポンスには Zstandard が正しい既定値ですが、ASP.NET Core のプロバイダーが出荷時に設定している品質のままではいけません。実際の JSON ペイロードを使ったベンチマークで、品質 1 が既定の品質 3 をサイズと CPU の両方で上回る理由、Brotli が今も勝つ場面、そして Gzip が互換性のためのフォールバックとしてのみ残る理由を示します。