JSON.NET自己参照ループエラーのトラブルシューティング
複雑なPOCOクラス(プレーン古いCLRオブジェクト)、特にエンティティデータモデル(.EDMX)から生成されたクラス(EDMX)から生成されたシリアル化は、「自己参照ループが検出された」エラーにつながる場合があります。これは、モデル内の循環参照がシリアル化中に無限ループを作成するために発生します。
JsonConvert.SerializeObject
ソリューションには、
を使用してシリアル化プロセスを構成することが含まれます。 具体的には、プロパティにはいくつかのオプションがあります:JsonSerializerSettings
ReferenceLoopHandling
ReferenceLoopHandling.Error
ReferenceLoopHandling.Serialize
ReferenceLoopHandling.Ignore
自己参照ループを無視するには、このコードを使用してください:
プロパティを使用してください:
<code class="language-csharp">JsonConvert.SerializeObject(YourPOCO, Formatting.Indented, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Ignore });</code>
適切な設定を選択すると、データ構造に依存します。 エラーを防ぎ、正しいシリアル化を確保するためにオブジェクトの関係を最適に処理する方法を選択してください。
以上がシリアル化中にjson.net自己参照ループエラーを処理する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。