2026-06-03 comparisondotnetaspnetcore .NET 11 のバックグラウンドジョブにおける BackgroundService vs IHostedService vs Hangfire インプロセスのループには BackgroundService、ライフサイクルの細かな制御が必要なときは素の IHostedService、ジョブが再起動を生き延びる必要があるときは Hangfire を選びます。コード付きの決定マトリクスと、あなたの代わりに決めてくれる一点を示します。
2026-05-31 csharpdotnetdotnet-11 ASP.NET Core で BackgroundService を使って fire-and-forget の処理を安全に実行する方法 コントローラーから Task.Run を呼ぶと、シャットダウン時に処理が失われ、例外が握りつぶされ、すでに破棄された scoped サービスを参照してしまいます。安全なパターンは、BackgroundService が排出する境界付き Channel キューであり、作業項目ごとに新しい scope を開き、StopAsync で実行中の処理を完了させます。
2026-05-31 csharpdotnetdotnet-11 ASP.NET Core 11 で BackgroundService 内から scoped サービスを使う方法 BackgroundService はシングルトンなので、DbContext のような scoped サービスを直接注入できません。IServiceScopeFactory を受け取り、CreateAsyncScope で作業単位ごとに scope を開き、その中で解決し、作業が終わったら破棄します。
2026-05-26 comparisonblazordotnet .NET 11 における Blazor Server vs Blazor WebAssembly vs Blazor United: 2026 年に選ぶべきはどれか .NET 11 で新規の Blazor アプリを作るなら、Blazor Web App テンプレート (かつて Blazor United と呼ばれていたもの) を生成し、ページごとに描画モードを選びます。Server 専用や WebAssembly 専用のテンプレートが妥当なのは限られたケースだけです。
2026-05-24 dotnet-11aspnetcoreopenapi .NET 11 Preview 4 の ASP.NET Core が OpenAPI に HTTP QUERY メソッドを教える .NET 11 Preview 4 により、ASP.NET Core の OpenAPI 生成は HTTP QUERY を OpenAPI 3.2 の第一級の操作として認識するようになり、3.0 と 3.1 のドキュメントには適切なフォールバックが用意されます。
2026-05-21 comparisonaspnetcoreminimal-apis ASP.NET Core 11 における Minimal APIs vs コントローラー:2026 年はどちらを選ぶべきか? ASP.NET Core 11 ではデフォルトで Minimal APIs を選びます。コントローラーは、Minimal APIs がまだカバーしていない MVC の機能、つまり多数のアクションに対する規約ベースのルーティング、MVC スタイルのフィルター、Razor ビューが必要な場合にのみ使います。
2026-05-12 errorscsharpdotnet 修正: InvalidOperationException: Synchronous operations are disallowed Stream.Read または Write の呼び出しを ReadAsync/WriteAsync に置き換えます。最終手段として、Kestrel、IIS、または IHttpBodyControlFeature 経由でリクエスト単位に AllowSynchronousIO を設定します。
2026-05-10 errorscsharpdotnet 解決方法: Cannot consume scoped service 'X' from singleton 'Y' ASP.NET Core のスコープ検証は、シングルトンが scoped 依存をプロセス全体にわたってキャプチャしてしまう場合にこの例外を投げます。コンシューマーを scoped にするか、IServiceScopeFactory を注入して必要に応じてスコープを作成してください。
2026-05-10 errorscsharpdotnet 解決方法: Unable to resolve service for type 'X' while attempting to activate 'Y' ASP.NET Core は、コンストラクターが登録されていない型、別のコンテナーに登録された型、またはホストのビルド後に追加された型を要求した場合にこの例外をスローします。3 つの具体的な修正でほぼすべてのケースをカバーします。
2026-05-05 errorscsharpdotnet 修正: System.InvalidOperationException: No connection string named 'DefaultConnection' could be found .NET 11 で GetConnectionString が null を返す場合、appsettings.json にキーがない、ビルド出力にコピーされていない、または間違った環境ファイルが選ばれているかのいずれかです。3 つのチェックで 95% のケースが解決します。