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-10 csharpdotnetdotnet-11 ソース生成された System.Text.Json のシリアル化を type info resolver のモディファイアーでカスタマイズする方法 .NET 11 でソース生成された JsonSerializerContext に JsonTypeInfo のモディファイアーを付ける方法です。new MyContext(options) が黙って破棄する理由、動作する WithAddedModifier の構成、失う高速パス(実測値つき)、そしてモディファイアーを無効化する命名ポリシーの落とし穴を扱います。
2026-07-29 errorscsharpdotnet 解決: Reflection-based serialization has been disabled for this application この InvalidOperationException は、PublishTrimmed または PublishAot が JsonSerializerIsReflectionEnabledByDefault を false にしたことを意味します。生成された JsonSerializerContext で解決します。
2026-07-27 csharpdotnetdotnet-11 System.Text.Json で JsonDerivedType を使ってポリモーフィックな型階層をシリアライズする方法 .NET 11 におけるポリモーフィック JSON の完全ガイドです。JsonDerivedType と JsonPolymorphic、宣言された型がすべてを決める理由、$type の順序ルール、この機能がスローするすべての例外、自分で所有していない型のためのコントラクトモデル、そして ASP.NET Core が OpenAPI に出力する内容を扱います。
2026-07-21 csharpdotnet-11system-text-json .NET 11 Preview 6 で System.Text.Json が C# の union 型のシリアライズに対応 .NET 11 Preview 6 の System.Text.Json が、アクティブなケースを書き出すことで新しい C# の union 型をシリアライズする仕組みと、あいまいなケースを解決する JsonUnionAttribute 型分類子の API を解説します。
2026-06-10 dotnet-11csharpsystem-text-json .NET 11 Preview 5 で System.Text.Json がついに JSON Lines を書き出せるようになりました .NET 11 Preview 5 は topLevelValues: true 付きの JsonSerializer.SerializeAsyncEnumerable を追加し、System.Text.Json が JSONL を読むだけでなくストリームで書き出せるようになりました。
2026-05-30 migrationnewtonsoft-jsonsystem-text-json 大規模な .NET 11 コードベースで Newtonsoft.Json 13 から System.Text.Json へ移行する Newtonsoft.Json 13.0.4 を .NET 11 組み込みの System.Text.Json に置き換えるための、バージョン固定の手引きです。属性とオプションの対応付け、出力フォーマットを静かに変えてしまうデフォルト値、段階的な展開戦略、検証、そして大規模コードベースを襲う落とし穴を扱います。
2026-05-22 comparisonsystem-text-jsonnewtonsoft-json System.Text.Json vs Newtonsoft.Json(2026年): どちらを選ぶべきか? .NET 11 の新規コードには System.Text.Json を選びましょう。ランタイムに同梱され、約2倍高速で、Native AOT で動作する唯一の選択肢です。Newtonsoft.Json は JSONPath、TypeNameHandling、本当に緩い JSON のためだけに使います。
2026-05-14 errorscsharpdotnet Fix: A possible object cycle was detected System.Text.Json は逆参照を持つグラフのシリアライズを拒否します。ReferenceHandler.IgnoreCycles を設定するか、DTO に射影するか、逆向きポインタに [JsonIgnore] を付けてください。Preserve は最終手段です。
2026-05-13 errorscsharpdotnet 修正: System.Text.Json.JsonException: The JSON value could not be converted System.Text.Json は、受信した JSON トークンが対象の CLR 型と一致しない場合にこの例外をスローします。JSON を型に合わせるか、両者を橋渡しする JsonConverter または JsonSerializerOption を登録してください。