如何从 Jtoken 调用值



所以我有一个JSON对象,然后我遍历所有子项并将项目添加到JTokens列表中。调试时,列表包含以下内容: https://i.stack.imgur.com/uXZDI.jpg

当我显示消息框时,我得到以下内容: https://i.stack.imgur.com/oUuji.jpg

问题是,我只希望字符串文本为:"志愿者"。我该怎么做?

List<JToken> objecten = new List<JToken>();
JObject json = JObject.Parse(content);
foreach (JToken token in json.Children<JToken>())
{
objecten.Add(token);
}
MessageBox.Show(objecten[1].ToString());

如果我想在字符串变量中获取角色,我想这样做,但我不知道它是如何工作的:

字符串角色 = 对象。角色;

您可以使用SelectToken

,其中您可以根据其路径选择您想要的值。请参阅此参考。

JObject json = JObject.Parse(content);    
var value = json.SelectToken("role").Value<string>();      

添加路径以选择role。路径将取决于您的 JSON 结构。

内容值示例

{
response : {
role : volunteer,
success: true,
token: eyJhbGci...
}
}
JObject json = JObject.Parse(content);    
var value = json.SelectToken("response.role").Value<string>();

你可以试试这个:

JObject json = JObject.Parse(content);
foreach (KeyValuePair<string, JToken> sourcePair in json)
{
if (sourcePair.Key == "Role")
role = sourcePair.Value.ToString();
}

使用递归,您可以在不知道属性的完整路径的情况下遍历所有 json 对象

相关内容

  • 没有找到相关文章

最新更新