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 が互換性のためのフォールバックとしてのみ残る理由を示します。
2026-08-13 dotnet-11aspnetcoreblazor Blazor Server のサーキットがタブのアイドル時に自動で一時停止するようになりました .NET 11 Preview 7 では、ブラウザーのタブが非表示になったときに対話型 Server サーキットを一時停止するオプトインのパッケージが追加され、実際にはいないユーザーが抱え込んでいたメモリと SignalR 接続が解放されます。
2026-08-12 errorsaspnetcoredotnet 解決: The 'interceptors' feature is not enabled in this namespace CS9137 は Microsoft.AspNetCore.OpenApi のソースジェネレーターが原因です。PackageReference を持つプロジェクトだけでなく、AddOpenApi を呼び出すすべてのプロジェクトに InterceptorsNamespaces を追加してください。
2026-08-11 errorsaspnetcoredotnet 解決: The type or namespace name 'OpenApiReference' could not be found OpenApiReference は Microsoft.OpenApi 2.0 で削除されました。using を Microsoft.OpenApi に変えるだけでは不十分で、各箇所を OpenApiSchemaReference のような型付き参照に置き換えます。