我需要在linq到xml元素集合中选择最常出现的值。你是怎么做到的?
编辑,这是我尝试的但显然不正确;
XDocument btCheck = XDocument.Load("https://www.url.com" + postcode);
var districtCode = btCheck.Descendants("DSL_CHECKER").Elements("ADDRESS_DETAILS").Elements("ADDRESS_DETAIL").Elements("ADDRESS").Elements("DISTRICTID");
string d = (districtCode.GroupBy(z => z.Value).OrderBy(z => z.Key).Take(1)).First();
答案 0 :(得分:3)
由于你没有展示你到目前为止所尝试的内容,我只会提供一些提示而不是完整的答案:
GroupBy
然后Max
。
答案 1 :(得分:0)
var code = btCheck.Descendants("ADSL_CHECKER").Elements("ADDRESS_DETAILS")
.Elements("ADDRESS_DETAIL").Elements("ADDRESS").Elements("DISTRICTID")
.GroupBy(z => z.Value).Select(group => new
{
value = group.Key,
Count = group.Count()
})
.OrderByDescending(z => z.Count).FirstOrDefault();