直接將JSON數據反序列化為Dictionary<string, object>
可能會導致對象結構不完整。為了在C#中高效地反序列化JSON數據,建議使用其他方法。
強烈推薦使用Newtonsoft.Json庫(也稱為Json.NET)。該庫具有諸多優勢:
Json.NET的關鍵特性:
JsonIgnore
和JsonProperty
等屬性自定義類序列化方式。 使用Json.NET進行反序列化的示例:
<code class="language-csharp">using Newtonsoft.Json; public class Product { public string Name { get; set; } public DateTime Expiry { get; set; } public decimal Price { get; set; } public string[] Sizes { get; set; } } // ... (其余代码保持不变) ... Product product = new Product(); product.Name = "Apple"; product.Expiry = new DateTime(2008, 12, 28); product.Price = 3.99M; product.Sizes = new string[] { "Small", "Medium", "Large" }; string json = JsonConvert.SerializeObject(product); //{ // "Name": "Apple", // "Expiry": "2008-12-28T00:00:00", // "Price": 3.99, // "Sizes": [ // "Small", // "Medium", // "Large" // ] //} Product deserializedProduct = JsonConvert.DeserializeObject<Product>(json);</code>
通過使用Json.NET,您可以有效地反序列化JSON數據並獲得結構正確的對象,從而提高代碼的可靠性和效率。
以上是如何在C#中有效地對JSON數據有效化?的詳細內容。更多資訊請關注PHP中文網其他相關文章!