大家好日子。
我有一个名为User的类型。
<ul id="cart-products" data-role="listview" data-pull-to-refresh="true" data-messages='{ "refreshTemplate": "Refreshing!" }' data-source="CartData" data-template="cart-template"></ul>
我有一个这种类型的数组。
public struct User {
public string ID { get; set; }
public string Name { get; set; }
public string Country { get; set; }
}
数组包含:
public User[] users;
如何在C#中找出每个国家/地区的用户数量?
Index | ID | Name | Country
0 1 Smith United States
1 2 Aki Japan
2 3 Lisa United States
3 4 Adam Sweden
4 5 Geert Germany
5 6 Hido Japan
我想评估这些信息,以便我可以在图表控件上显示。我确信网上有关于我正在尝试做的事情的信息,但我不确切知道如何用它来表达...帮助将不胜感激。
提前致谢
更新
我已经做了以下工作并且有效:
United states - 2
Japan - 2
Sweden - 1
Germany - 1
但是,我认为这不是最好的方式......我想看看替代方案。
答案 0 :(得分:3)
如果您使用CarbineCoders回答group.Key
代替group.Country
public User[] users;
var countryCount= users.ToList().GroupBy(n => n.Country).
Select(group =>
new
{
Country= group.Key,
Count = group.Count()
});
答案 1 :(得分:0)
您可以使用Linq
var results = from U in users
group U by U.Country into g
select new { Country = g.Key, Total = g.count };