Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk deserialize JSON dalam .net menggunakan Newtonsoft atau Linq ke JSON?

Bagaimana untuk deserialize JSON dalam .net menggunakan Newtonsoft atau Linq ke JSON?

Barbara Streisand
Barbara Streisandasal
2025-01-24 09:41:10562semak imbas

How to Deserialize JSON in .NET using Newtonsoft or LINQ to JSON?

Gunakan Newtonsoft atau LINQ ke JSON untuk menyahsiri JSON dalam .NET

Soalan:

Bagaimana untuk menukar data JSON kepada objek .NET yang boleh digunakan menggunakan Newtonsoft atau LINQ kepada JSON?

Jawapan:

Gunakan Newtonsoft.Json:

  1. Tambahkan pakej Newtonsoft.Json NuGet pada projek anda.
  2. Gunakan Newtonsoft.Json.JsonConvert.DeserializeObject untuk menyahsiri data JSON menjadi objek yang ditaip kuat.
  3. Akses sifat objek yang dinyahsiri.

Gunakan LINQ untuk JSON:

  1. Gunakan Newtonsoft.Json.Linq.JObject.Parse untuk menghuraikan data JSON ke dalam JObject.
  2. Gunakan pertanyaan LINQ untuk menavigasi dan mengekstrak data daripada JObjects.

Gunakan penaipan dinamik C#:

  1. Gunakan Newtonsoft.Json.JsonConvert.DeserializeObject untuk menyahsiri data JSON menjadi objek dinamik.
  2. Akses sifat objek dinamik secara langsung tanpa menyatakan jenisnya.

Kod contoh menggunakan penaipan dinamik:

<code class="language-csharp">public class Example
{
    public int Id { get; set; }
    public string Name { get; set; }
}

// JSON字符串
string json = "{\"Id\": 1, \"Name\": \"biofractal\"}";

// 反序列化为动态对象
dynamic results = JsonConvert.DeserializeObject<dynamic>(json);

// 访问属性
int id = results.Id;
string name = results.Name;

// 如需创建强类型对象
Example example = new Example
{
    Id = id,
    Name = name,
};</code>

Atas ialah kandungan terperinci Bagaimana untuk deserialize JSON dalam .net menggunakan Newtonsoft atau Linq ke JSON?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn