JSON 反序列化故障排除:數組到對象轉換
JSON 反序列化中的一個常見問題涉及嘗試將 JSON 數組(如 [1, 2, 3]
)轉換為已定義的對像類型。這會失敗,因為 JSON 數組和 JSON 對象具有不同的結構。 JSON 對象使用鍵值對(例如 {"name": "value"}
),而數組只是簡單的有序列表。
解決方案是將 JSON 數據轉換為 JSON 對象,或者調整反序列化目標以容納數組。 最直接的方法是將 JSON 反序列化為預期對像類型的列表。
例如,如果您的 JSON 數組包含多個 RetrieveMultipleResponse
對象,您可以使用如下代碼:
<code class="language-csharp">var objResponse1 = JsonConvert.DeserializeObject<List<RetrieveMultipleResponse>>(JsonStr);</code>
通過使用 List<RetrieveMultipleResponse>
,您指定需要一個 RetrieveMultipleResponse
對像數組,從而解決反序列化錯誤。 這有效地處理了傳入 JSON 數據的數組結構。
以上是如何修復「無法將 JSON 陣列反序列化為物件」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!