[英]How to get the type of deserialized C# object from JSON text?
我試圖在 JSON 文本(JSON 文本中的 $type)中獲取序列化 C# 對象的類型,而無需再次將 JSON 文本反序列化為對象。 你能建議我有哪些選擇嗎?
我正在使用 Newtonsoft 庫進行序列化和序列化。
提前致謝
我不使用 Newtonsoft 庫。 但是,假設 $type 位於文件的開頭或結尾,我可能會使用字符串函數(下面的偽代碼),這會非常快。
查找 $type
i=找到下一個冒號
j=查找下一個逗號
在 i 和 j 之間抓取令牌
修剪那個令牌
用令牌做一些有用的事情。 用反射制作一個類型?
聽起來怎么樣? 當您使用它時,您可以編寫一個擴展方法。 多次點擊 +1,我會考慮編寫代碼 ;-)
試試這個
var jsonObj = JObject.Parse("your json string");
var props = jsonObj.Properties();
foreach (var prop in props)
{
Console.WriteLine(prop.Value.Type);
}
我希望這對你有幫助!
使用 Newtonsoft 庫相當簡單。
JObject json = JObject.Parse(JsonText);
string type = json["$type"].ToString();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.