C#의 동적 키 JSON 역직렬화
어떤 경우에는 웹 요청이 동적 키가 포함된 JSON 응답을 반환할 수 있으며, 이로 인해 C# 개체로 역직렬화할 때 문제가 발생합니다. 예를 들어 다음 JSON 응답을 고려해 보세요.
<code>{ "nasdaq_imbalance": { "name": "nasdaq_imbalance", "group": "Market Data", "description": null }, "DXOpen IM": { "name": "DXOpen IM", "group": "Daily", "description": null }, "Float Shares": { "name": "Float Shares", "group": "Daily", "description": null }, }</code>
목표는 이 JSON을 다음 유형의 C# 개체 목록으로 역직렬화하는 것입니다.
<code>public class Dataset { public string name { get; set; } public string group { get; set; } public string description { get; set; } }</code>
이를 위해 Json.NET의 강력한 기능을 활용할 수 있습니다. 다음 코드 조각은 방법을 보여줍니다.
<code class="language-csharp">Dictionary<string, Dataset> datasets = JsonConvert.DeserializeObject<Dictionary<string, Dataset>>(json);</code>
이 코드 줄은 JSON을 키가 JSON 응답의 동적 키(예: "nasdaq_imbalance", "DXOpen IM" 등)이고 값이 Dataset 클래스의 인스턴스인 사전으로 역직렬화합니다.
이 사전에서 동적 키를 통해 데이터 세트에 쉽게 액세스하고 필요에 따라 사용할 수 있습니다. 예를 들어, "nasdaq_imbalance" 키를 사용하여 데이터 세트에 액세스하려면:
<code class="language-csharp">Dataset nasdaqImbalanceDataset = datasets["nasdaq_imbalance"];</code>
이 솔루션은 동적 키를 미리 알고 있는 경우에만 작동한다는 점을 명심하세요. 키가 동적으로 변경될 수 있는 경우 더 복잡한 접근 방식이 필요할 수 있습니다.
위 내용은 동적 키를 사용하여 JSON을 C# 개체 목록으로 역직렬화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!