Rumah >pembangunan bahagian belakang >C++ >Bagaimana Mudah Menukar Respons JSON Kompleks ke C# DTO?
Tukar respons JSON kompleks kepada DTO dalam C# Asp.Net
Soalan asal:
Apabila menggunakan RestSharp untuk menerima respons JSON yang kompleks, ekstrak senarai DTO tanpa penghuraian manual.
Penyelesaian:
Manfaatkan ciri "Tampal Khas" Visual Studio untuk menjana kelas C# secara automatik daripada JSON:
<code class="language-csharp">public class Rootobject { public Response response { get; set; } } public class Response { public Result result { get; set; } public string uri { get; set; } } public class Result { public Leads Leads { get; set; } } public class Leads { public Row[] row { get; set; } } public class Row { public string no { get; set; } public FL[] FL { get; set; } } public class FL { public string val { get; set; } public string content { get; set; } }</code>
Ini membolehkan anda mengakses data dalam respons JSON melalui sifat DTO yang dijana, contohnya:
<code class="language-csharp">// 假设 response 是 RestSharp 响应对象 var json = response.Content; // 将 JSON 反序列化到 Rootobject 类 Rootobject rootObject = JsonConvert.DeserializeObject<Rootobject>(json); // 访问 Leads 属性 var leads = rootObject.response.result.Leads; // 访问各个 Lead 记录 foreach (var leadRow in leads.row) { var leadId = leadRow.FL[0].content; var company = leadRow.FL[1].content; // 从检索到的数据创建 LeadDto 对象 var leadDto = new LeadDto { LeadId = leadId, Company = company }; }</code>
Atas ialah kandungan terperinci Bagaimana Mudah Menukar Respons JSON Kompleks ke C# DTO?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!