在 C# Asp.Net 中將複雜的 JSON 回應轉換為 DTO
原問題:
使用 RestSharp 接收複雜的 JSON 回應時,無需手動解析即可擷取 DTO 清單。
解:
利用 Visual Studio 的「貼上特殊」功能,自動從 JSON 產生 C# 類別:
<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>
這允許您透過產生的 DTO 屬性存取 JSON 回應中的數據,例如:
<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>
以上是如何輕鬆地將複雜的 JSON 回應轉換為 C# DTO?的詳細內容。更多資訊請關注PHP中文網其他相關文章!