【发布时间】:2022-01-23 17:11:59
【问题描述】:
我有这样的数据和代码,用于按国家过滤和计数。 但我只能一一过滤。
数据:
[
{
"Name":"Amal",
"Country":"India",
"salary":"4.000,00"
},
{
"Name":"Luke",
"Country":"England",
"salary":"2.500,00"
},
{
"Name":"Tom",
"Country":"Australia",
"salary":"2.700,00"
},
{
"Name":"Ram",
"Country":"India",
"salary":"2.000,00"
}
]
代码:
using System;
using Newtonsoft.Json.Linq;
public class Program
{
public static void Main()
{
string inputJson = "[{'Name':'Amal', 'Country':'India','salary':'4.000,00'},{'Name':'Luke', 'Country':'England','salary':'2.500,00'},{'Name':'Tom', 'Country':'Australia','salary':'2.700,00'}, {'Name':'Ram', 'Country':'India','salary':'2.000,00'}]";
var jArrObject = JArray.Parse(inputJson);
Console.WriteLine("***Employee Data***");
var employee = new JArray(jArrObject.SelectTokens("$.[?(@.Country=='India')]"));
Console.WriteLine("Total Employee : "+employee.Count);
Console.WriteLine("Employee : "+employee);
}
}
我期待得到这样的结果:
[
{
"country":"India",
"Total Employee":"2",
"Total Salary":"6.000,00"
},
{
"country":"England",
"Total Employee":"1",
"Total Salary":"2.500,00"
},
{
"country":"Australia",
"Total Employee":"1",
"Total Salary":"2.700,00"
}
]
如何将数组对象按国家分组,按国家加总工资?
【问题讨论】: