Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menyahserialisasikan Data JSON API Kazaa Terbaik ke dalam Objek .NET Menggunakan Newtonsoft?
Deserialize JSON ke objek .NET menggunakan Newtonsoft
Soalan:
Saya tidak dapat menyahsiri data JSON yang diambil daripada API Kazaa menjadi objek .NET yang bermakna. Saya cuba menggunakan Newtonsoft.Json.JsonConvert.DeserializeObject untuk menukarnya kepada Senarai
Jawapan JSON:
<code class="language-json">{ "page": 1, "total_pages": 8, "total_entries": 74, "q": "muse", "albums": [ { "name": "Muse", "permalink": "Muse", "cover_image_url": "http://image.kazaa.com/images/69/01672812 1569/Yaron_Herman_Trio/Muse/Yaron_Herman_Trio-Muse_1.jpg", "id": 93098, "artist_name": "Yaron Herman Trio" }, { "name": "Muse", "permalink": "Muse", "cover_image_url": "http://image.kazaa.com/images/54/888880301154/Candy_Lo/Muse/Candy_Lo-Muse_1.jpg", "id": 102702, "artist_name": "\u76e7\u5de7\u97f3" }, // ... ], "per_page": 10 }</code>
Penyelesaian menggunakan LINQ Newtonsoft kepada JSON:
Untuk situasi ini, LINQ ke JSON Newtonsoft ialah pilihan yang sesuai kerana ia membolehkan anda menanyakan data JSON secara langsung dalam cara berorientasikan objek. Berikut ialah contoh kod:
<code class="language-csharp">using Newtonsoft.Json.Linq; var client = new WebClient(); var stream = client.OpenRead("http://api.kazaa.com/api/v1/search.json?q=muse&type=Album"); var reader = new StreamReader(stream); var jObject = JObject.Parse(reader.ReadLine()); // 访问特定的封面图像URL Console.WriteLine((string)jObject["albums"][0]["cover_image_url"]); stream.Close();</code>
Pendekatan ringkas menggunakan penaipan dinamik C#:
Anda boleh memudahkan lagi proses penyahserikatan dengan menggunakan penaipan dinamik C#, yang membolehkan anda memproses data JSON tanpa menyatakan jenis objek secara eksplisit. Berikut ialah contoh kod:
<code class="language-csharp">using Newtonsoft.Json; dynamic results = JsonConvert.DeserializeObject<dynamic>(json); var albumCoverUrl = results.albums[0].cover_image_url;</code>
Atas ialah kandungan terperinci Bagaimana untuk Menyahserialisasikan Data JSON API Kazaa Terbaik ke dalam Objek .NET Menggunakan Newtonsoft?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!