我搜索了,但找不到令人滿意的答案。我知道有這樣的序列化程序:DataContractJsonSerializer,JavaScriptSerializer來做到這一點。但是這些需要指定'KnownType'的奇怪要求,這在我的場景中是不可能的,因爲我正在序列化的對象屬於通用庫,並且接口的實際實現可能來自客戶端。 有什麼建議嗎?c#:序列化具有可讀格式屬性的接口的對象
1
A
回答
1
ServiceStack有一個JSON序列不需要指定已知類型:
var json = JsonSerializer.SerializeToString(myObj);
或者使用擴展方法,你可以調用的toJSON任何對象:
var json = myObj.ToJson();
0
Json.Net
有一個方法SerializeObject
。這會爲你做這項工作。
它的簽名是:
public static string SerializeObject(object value);
用法:
using Newtonsoft.Json;
...
string jsonData = JsonConvert.SerializeObject(obj);
相關問題
- 1. 如何序列化具有接口作爲屬性的對象?
- 2. 序列化具有接口的對象
- 3. 可序列化的對象屬性
- 4. 序列化/反序列化給AttributeError的:「統一」對象有沒有屬性「讀」
- 5. 具有數組屬性的對象的Xml序列化
- 6. 從具有屬性類型的接口繼承的可序列化的類
- 7. Automapper:接口屬性的格式化
- 8. setAttribute:不可序列化的屬性(Java對象序列化)
- 9. 如何序列化具有文件屬性的對象
- 10. 序列化具有相同屬性變體的對象
- 11. 序列化具有不可序列化父類的對象
- 12. 對象屬性的文化格式
- 13. 使字符串屬性不可讀對象序列化
- 14. 序列化,其具有的JSON格式字符串JSON對象
- 15. 序列化C#對象,想要反序列化到接口
- 16. 序列化對象屬性的實體
- 17. C# - 對象列表的反序列化,不反序列化繼承的屬性
- 18. 反序列化時丟失的序列化對象的屬性
- 19. 序列化接口對象列表
- 20. python對象具有初始化屬性
- 21. 可以反序列化爲protobuf-net中接口的只讀屬性嗎?
- 22. 具有對象屬性的Ruby對象
- 23. 不可變的只讀對象vs具有自動屬性的對象
- 24. 強制接口屬性的返回值是可序列化
- 25. 優化具有可變需要屬性的對象
- 26. 具有基於控件的屬性的c#類序列化
- 27. C#屬性順序 - 可序列化 - D
- 28. c#避免嵌套類對象的子屬性的序列化
- 29. C#:在序列化時繞過不可序列化的屬性
- 30. 具有不同屬性名稱的序列化抽象類
JSON.NET確實太 – 2013-02-22 13:17:33