menyelesaikan "json.net ralat: gelung rujukan diri dikesan"
Serializing Objek CLR lama (POCOS) dari Model Data Entiti (.edmx) Menggunakan kadang -kadang boleh membuang kesilapan ini: JsonConvert.SerializeObject
<code>Error: Self referencing loop detected for type System.data.entity occurs.</code>
untuk mengawal tingkah laku siri. JsonSerializerSettings
Menggunakan jSonserializersettings
menawarkan beberapa pilihan untuk mengendalikan rujukan bulat: JsonSerializerSettings
ReferenceLoopHandling.Error
ReferenceLoopHandling.Serialize
ReferenceLoopHandling.Ignore
inilah cara menerapkan tetapan ini:
untuk objek dengan bersarang terhingga, gunakan
:
ReferenceLoopHandling.Serialize
JsonConvert.SerializeObject(YourPOCOHere, Formatting.Indented, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Serialize });
: PreserveReferencesHandling.Objects
StackOverflowException
JsonConvert.SerializeObject(YourPOCOHere, Formatting.Indented, new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects });
Tetapan terbaik bergantung pada struktur POCO anda. Berhati-hati mempertimbangkan hubungan dalam data anda untuk memilih pilihan yang paling sesuai dan mengelakkan ralat gelung rujukan diri semasa siri JSON.
Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan kesilapan 'rujukan diri yang dikesan' kesilapan apabila menyatukan rangka kerja entiti POCO objek dengan json.net?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!