將具有 ID 作為名稱的 JSON 對象轉換為強類型 C# 對象
當將具有數字 ID 鍵的 JSON 對象反序列化為強類型 C# 對象時,會遇到挑戰。考慮以下 JSON 響應:
<code>{ "5234592":{ "pollsAndSurveys":{ ... }, "attendance":{ ... } }, "5235291":{ "pollsAndSurveys":{ ... }, "attendance":{ ... } } }</code>
為了創建強類型對象,您已定義了表示“PollsAndSurveysStatistics”、“AttendanceStatistics”和“SessionPerformanceStats”實體的類。但是,問題在於您的 C# 對象“WebinarPerformanceStats”的頂級結構。
為了解決這個問題,請在 C# 中將根對象轉換為字典:
<code class="language-csharp">var dictionary = JsonConvert.DeserializeObject<Dictionary<long, SessionPerformanceStats>>(theJsonResponse);</code>
這種方法允許 Json.NET 將 JSON 對象反序列化為字典,其中 ID 數字作為鍵。為了確保正確的類型處理,您可以按如下方式細化聲明:
<code class="language-csharp">var dictionary = JsonConvert.DeserializeObject<Dictionary<long, SessionPerformanceStats>>(theJsonResponse);</code>
此修改確保 ID 鍵被解釋為長整數。通過使用字典作為根對象,您可以使用 ID 鍵訪問會話性能統計信息。
以上是我如何將具有數字ID作為密鑰的JSON對象進行重新序列化,為強鍵入C#對象?的詳細內容。更多資訊請關注PHP中文網其他相關文章!