JSON.NET menawarkan alat yang mantap untuk mengendalikan data JSON. Panduan ini memfokuskan pada menghuraikan aliran objek JSON yang digabungkan ke dalam koleksi IEnumerable
.
Strategi teras melibatkan penggunaan JsonSerializer
dengan CheckAdditionalContent
ditetapkan kepada false
, membenarkan penghuraian berbilang objek. Strim itu dibalut dengan StreamReader
, menyuapkan JsonTextReader
untuk pengingesan data JSON.
Untuk memproses strim berterusan, tetapan SupportMultipleContent
kepada true
adalah kritikal. Perangkap biasa adalah gagal memajukan pembaca dengan betul selepas penyahserialisasian. Penyelesaiannya terletak pada gelung berstruktur dengan teliti:
<code class="language-csharp">while (jsonReader.Read()) { yield return serializer.Deserialize<TResult>(jsonReader); }</code>
Gelung ini memastikan setiap objek JSON dibaca dan dinyahsiri menjadi objek TResult
, dengan cekap menghasilkan setiap objek dalam koleksi IEnumerable
.
Yang penting, ingat bahawa IEnumerable
harus diulang sementara strim masih terbuka. Contoh berikut menggambarkan ini:
<code class="language-csharp">using (var stream = /* your stream */) { IEnumerable<MyClass> result = ReadJson<MyClass>(stream); foreach (var item in result) { Console.WriteLine(item.MyProperty); } }</code>
Untuk maklumat terperinci dan contoh lanjut, rujuk sumber berikut:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghuraikan Strim Objek JSON Bercantum ke dalam Koleksi IEnumerable Menggunakan JSON.NET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!