2026-05-21 comparisoncsharplinq C# における IEnumerable vs IAsyncEnumerable vs IQueryable:メソッドは何を返すべきか 3 つのシーケンスインターフェース、3 つの実行モデル。データベースがクエリを変換できる場合は IQueryable を、プロデューサーが非同期でストリーミングしたい場合は IAsyncEnumerable を、それ以外のメモリ内のものには IEnumerable を使用します。
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-20 comparisoncsharpasync C# における async void と async Task: それぞれが正しい場面 async Task がデフォルトで、async void は例外です。async void は、イベントハンドラー、メッセージループのトップレベルハンドラー、そして void シグネチャを要求する一部のフレームワークコールバックに限って使用してください。それ以外のすべてでは、例外処理、コンポーザビリティ、テスタビリティの観点から async Task が勝ります。
2026-05-20 comparisonef-coredapper EF Core 11 vs Dapper の一括挿入: リアルなベンチマーク .NET 11 での一括挿入では、EF Core も Dapper も勝ちません。SqlBulkCopy が勝ちます。これはそのベンチマークと理由、そして各ツールにふさわしい場所です。
2026-05-20 comparisoncsharprecords C# における record vs class vs 構造体: 意思決定マトリックス C# 14 は 4 つのデータ型の形式 -- class、record class、struct、record struct -- を提供します。これがその意思決定マトリックスです: それぞれがいつ正しいか、それぞれが何を犠牲にするか、そして決定を強制するルール。