C# Linq查询到Json字符串
从JObject开始,我可以得到我感兴趣的数组:C# Linq查询到Json字符串,c#,json,linq,json.net,C#,Json,Linq,Json.net,从JObject开始,我可以得到我感兴趣的数组: JArray partial = (JArray)rssAlbumMetadata["tracks"]["items"]; 第一个问题:“部分”包含很多我不感兴趣的属性。 我怎样才能只得到我需要的 第二个问题:一旦第一个任务成功,我将得到一个重复项目的JArray。我怎样才能得到唯一的? 结果应该是这样的 { 'composer': [ { 'id': '51523',
JArray partial = (JArray)rssAlbumMetadata["tracks"]["items"];
第一个问题:“部分”包含很多我不感兴趣的属性。
我怎样才能只得到我需要的
第二个问题:一旦第一个任务成功,我将得到一个重复项目的JArray。我怎样才能得到唯一的?
结果应该是这样的
{
'composer': [
{
'id': '51523',
'name': 'Modest Mussorgsky'
},
{
'id': '228918',
'name': 'Sergey Prokofiev'
},
]
}
让我从以下几点开始:
[
{
"id": 32837732,
"composer": {
"id": 245,
"name": "George Gershwin"
},
"title": "Of Thee I Sing: Overture (radio version)"
},
{
"id": 32837735,
"composer": {
"id": 245,
"name": "George Gershwin"
},
"title": "Concerto in F : I. Allegro"
},
{
"id": 32837739,
"composer": {
"id": 245,
"name": "George Gershwin"
},
"title": "Concerto in F : II. Adagio"
}
]
第一个问题:
我怎样才能只得到我需要的
这没有什么神奇之处,您需要读取整个JSON字符串,然后查询对象以找到您要查找的内容。如果您需要的是JSON的一部分,则无法读取它。您没有提供数据外观的示例,因此无法指定如何查询
我猜第二个问题是:如何消除对象数组的重复内容
同样,我没有您的对象的完整视图,但是这个示例应该能够向您展示-按照您的要求使用Linq:
var items = new []{new {id=1, name="ali"}, new {id=2, name="ostad"}, new {id=1, name="ali"}};
var dedup = items.GroupBy(x=> x.id).Select(y => y.First()).ToList();
Console.WriteLine(dedup);
您应该包括您拥有的JSON和您期望得到的内容。这将有助于人们帮助你不再发表评论。。。请帮忙!谢谢