This Json.NET頁面沒有明確提及IEnumerable的支持。但是測試,它似乎工作。我可以依靠這個嗎?Json.NET是否支持序列化/序列化到IEnumerable <T>?
回答
序列化是沒有問題的,因爲它使用了序列化對象的類型
一個通用的IEnumerable(IEnumerable的<>)可以反序列化,因爲它的內部類型是不夠的deserializator明白讀什麼,但通用的IEnumerable只是需要一些幫助來反序列化,像一個明確的JsonConverter
當然我指的是序列化的接口/反序列化類型的對象,而不是JObject
這類似於你一個問題:JSON.NET - how to deserialize collection of interface-instances?
和此博客文章進一步解釋:http://blog.greatrexpectations.com/2012/08/30/deserializing-interface-properties-using-json-net/
Json.NET以某種方式設法做到這一點,即使沒有提到顯式的JsonConverter。爲什麼? – Superhaxor4
你指的是泛型還是非泛型? 無論如何進入調試器並檢查生成到你的ienumerable中的元素來查看它們的類型 –
- 1. 是否支持自定義序列化器/反序列化器
- 2. Json.Net IEnumerable的序列化與TypeNameHandling = auto
- 3. Json.NET可以反序列化爲IEnumerable <KeyValuePair <string,string >>?
- 4. JSON.NET序列化
- 5. Json.NET:序列化/反序列化陣列
- 6. DataContract由'yield return'語句支持的IEnumerable <>的序列化
- 7. Json.net序列化實現IEnumerable的自定義集合<T>
- 8. JSON.NET反序列化
- 9. 序列化在JSON.NET
- 10. 用Json.NET序列化
- 11. JSON.net反序列化
- 12. JSON.NET序列化爲陣列
- 13. Json.net只序列化陣列
- 14. 序列化支持類VB.NET
- 15. 可以Json.NET序列化/反序列化到/從一個流?
- 16. 序列化到流是否
- 17. 爲json.net反序列化
- 18. 反序列化與Json.NET
- 19. JSON.NET序列化的ProcessStartInfo
- 20. JSON.NET反序列化問題
- 21. Json.Net反序列化提領
- 22. 反序列化JSON(Json.NET)
- 23. 使用Json.NET反序列化
- 24. 反序列化JSON與Json.NET
- 25. JSON.NET反序列化UTF16
- 26. JSON.NET線序列化winrt
- 27. 序列化使用Json.NET
- 28. 使用json.Net序列化ExpandoObject
- 29. 反序列化JSON C#Json.net
- 30. Json.net反序列化錯誤
是的。 ['IEnumerable'](https://msdn.microsoft.com/en-us/library/9eekhta0%28v=vs.110%29.aspx)從'IEnumerable'繼承:'public interface IEnumerable :IEnumerable'。從Json.NET文檔:[序列化指南:IEnumerable,列表和數組](http://www.newtonsoft.com/json/help/html/SerializationGuide.htm#Lists):**。NET列表(類型從IEnumerable繼承)和.NET數組被轉換爲JSON數組。** –
dbc