2026-10-28 errorscsharpcsharp-14 解決: 静的ファクトリーメソッドの [MemberNotNull] が効かず CS8618 が出続ける CS8618 はコンストラクターを抜ける時点で検査され、静的メソッドの [MemberNotNull] はインスタンスメンバーに対して黙って無視されます。値はプライベートコンストラクターに渡してください。
2026-10-16 csharpcsharp-14records C# の `with` 式は実際に何をコピーするのか、そしてレコードの計算プロパティが再計算されないのはなぜか with 式はレコードのコンパイラー生成メソッド <Clone>$ を呼び出し、そこでコピーコンストラクターが全インスタンスフィールドをコピーし、すべての初期化子をスキップします。そのため、他のプロパティから初期化されるプロパティ、キャッシュされた値、Guid の ID は古いまま残ります。.NET 10 と C# 14 で計測し、実際に有効な対処法を紹介します。
2026-10-15 csharpcsharp-14dotnet-11 C# の ref-safe-context とは何か、ref ローカルに対してコンパイラーはどう決めるのか ref ローカル、再代入、scoped、ヒープとスタックを参照する Span のコンパイル検証例で C# の参照エスケープ規則を理解します。
2026-09-01 comparisoncsharpcsharp-14 C# のリポジトリメソッドで Task を直接返す vs async/await でパススルーする: どちらを使うべきか リポジトリのパススルーメソッドで async/await を省略すると約 6 ns と 72 バイトを節約できますが、スタックフレーム、try/catch のセマンティクス、安全なリソース破棄を失います。計測済みのホットパス上の純粋なパススルーでない限り、return await を残してください。
2026-08-23 how-tocsharpcsharp-14 C# 14 ですべての enum 型に適用される静的拡張メンバーを書く方法 struct, Enum 制約を付けたジェネリックな extension ブロックを宣言すれば、ソリューション内のすべての enum に Status.Values、Status.Count、Status.Parse が生えます。レシーバーの形、CS0704 と CS0428 の罠、そして Enum.GetValues をキャッシュすべき理由。
2026-08-18 errorscsharpcsharp-14 Fix: C# 14 の拡張メンバーへ移行した後の The call is ambiguous between the following methods or properties 拡張メソッドを C# 14 の extension ブロックへ移した後の CS0121。コンパイラーは今も古い静的形式を出力します。重複を削除するか、呼び出しを修飾してください。
2026-08-16 system-text-jsoncsharpcsharp-14 System.Text.Json で required 修飾子付きのプロパティを無視させる方法 required なメンバーに [JsonIgnore] を付けると InvalidOperationException: marked required but does not specify a setter が発生します。2 つの機能が衝突する理由と、それでもプロパティを無視させる 4 つの方法を .NET 10 で計測しました。
2026-08-05 errorscsharpcsharp-14 対処法: C# の CS1998 "This async method lacks 'await' operators and will run synchronously" CS1998 は async メソッドに await がなく同期的に実行されることを意味します。async を外して Task.FromResult を返すか、忘れていた await を追加してください。
2026-07-21 errorscsharpcsharp-14 解決: CS4014 "Because this call is not awaited, execution of the current method continues" in C# CS4014 は Task を返すメソッドを await せずに呼び出したことを意味します。await を追加するか、意図的な fire-and-forget なら _ = で破棄し、例外を処理してください。
2026-07-20 errorscsharpcsharp-14 解決: C# の CS8618「Non-nullable property must contain a non-null value when exiting constructor」 CS8618 は、null 非許容のフィールドまたはプロパティがコンストラクター終了時に初期化されていないことを意味します。コンストラクターで代入する、既定値を与える、required にする、または null 許容にして解決します。