我有返回以下内容的 RESTful 端点:
{"error_msg": "{'status': 1, 'info': "Operation is not allowed on 'XXX, ['YYY']'", 'key': 'ZZZZ', 'extra': 'None', 'data': {}, 'EEEE': False}"}
上面的一些文字被替换了(XXX,ZZZ等(。
我的代码如下:
dynamic response = JsonConvert.DeserializeObject(new StreamReader(ex.Response.GetResponseStream()).ReadToEnd());
Console.Error.WriteLine(response.error_msg.info);
构建运行代码后,出现以下错误:
Newtonsoft.Json.Linq.JValue' 不包含"info"的定义
知道如何解决这个问题吗?
谢谢
这是因为这里的error_msg
是一个字符串,而不是一个对象。要么让它不是字符串,要么反序列化两次,即取出string error_msg
,然后反序列化该字符串。