我很乐意使用Newtonsoft JSON 库。例如,我会JObject从 .NET 对象创建一个,在这种情况下是一个 Exception 实例(可能是也可能不是子类)
JObject
if (result is Exception) var jobjectInstance = JObject.FromObject(result);
现在我知道该库可以将 JSON 文本(即字符串)反序列化为对象
// only works for text (string) Exception exception = JsonConvert.DeserializeObject<Exception>(jsontext);
但我正在寻找的是:
// now i do already have an JObject instance Exception exception = jobjectInstance.????
很明显,我可以从JObject返回到 JSON 文本,然后使用反序列化功能,但这对我来说似乎倒退了。
根据这篇文章,现在好多了:
// pick out one album JObject jalbum = albums[0] as JObject; // Copy to a static Album instance Album album = jalbum.ToObject<Album>();
文档: 将 JSON 转换为类型