从JSON字符串中提取值 c#

3

我使用了JSON.stringify方法将以下json字符串从javascript传到C#函数中:

"{
    \"code\":\"OK\",
    \"data\":[
        [\"adidas\",167],
        [\"adidas men's summer run basketball shoe\",35],
        [\"adidas shoes\",12],
        [\"adidas stan smith men\",9],
        [\"adidas golf shoes\",9],
        [\"adidas clothing\",9],
        [\"adidas zxz nylon man shoes\",8],
        [\"adidas uk\",8],
        [\"adidas predator\",8],
        [\"adidas perfume\",8],
        [\"adidas basketball shoes\",8],
        [\"puma and adidas shoes\",7],
        [\"mi adidas\",7],
        [\"mens discontinued adidas sandals\",7],
        [\"climate cool mens discontinued adidas sandals\",7],
        [\"china olympic adidas\",7],
        [\"china olimpic adidas\",7],
        [\"chaussure de foot adidas\",7],
        [\"alex white adidas\",7],
        [\"adidas superstars\",7]
]}"

'data'对象中包含着一个字符串和整型值的数组。我想将数据数组中的字符串值提取出来并放进一个列表中。我应该如何做?


可能是在C#中解析JSON的重复问题 - Merlyn Morgan-Graham
不确定这是否是重复项,因为我有一个匿名的JSON对象... - Scott Silvi
1
这个是使用Silverlight开发的吗?因为从你最近的其他问题来看,好像是这样的。 - AnthonyWJones
是的,但就像其他一些情况一样,我没有意识到Silverlight会对这样的事情产生如此大的影响 - 我只是在使用C#编程,你知道吗? - Scott Silvi
3个回答

2

1

使用类似Newtonsoft的工具将其解析为字典。一旦反序列化,可以按照自己的方式进行循环。

在上面的问题中提到的评论后,可能需要用允许重复项的数据结构替换字典。


也许这篇文章可以帮到你:https://dev59.com/U3I-5IYBdhLWcg3wSGUB - ashutosh raina
是的,我已经尝试过仅返回JSON字符串的数据部分,使用类似于Dictionary<string, int> results = JsonConvert.DeserializeObject<Dictionary<string, int>>(result);(或KeyValuePair),但它只会显示“无法将JSON数组反序列化为类型'System.Collections.Generic.Dictionary`2[System.String,System.Int32]'。”,我不确定该怎么办:( - Scott Silvi
也许可以创建一个自定义对象的数组,该对象具有字符串和整数作为其字段(仅供参考)。 - ashutosh raina
1
我最后只是遍历数据对象并返回一个纯字符串数组,并使用 jObject 和 JArray 将其转换为 list<string>。 - Scott Silvi

0

所以它不会被埋在注释中:

在我的JS中,我最终只是循环遍历了我的数据对象:

for(i=0;i<r['data'].length,i++) {
    newObject[i] = r['data'][i][0];
}
return JSON.stringify(newObject);

我随后使用了JSON.Net/newtonsoft库中的JObject和JArray。最后,我循环遍历了我的JArray,创建了一个ObservableCollection,并将其绑定到我的ListBox ItemsSource。

Scott


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接