1
我有一個列表,它是像下面LINQ的選擇得分最高的組
Name Score Date
S1 2 15/02/2013
S1 4 15/02/2013
S2 0 15/02/2013
My desired out should be
S1 6 15/02/2013
爲了這個,我寫了LINQ代碼
(from _data in _rawData
group _data by new { _data.Date, _data.Name } into gp orderby gp.Key.Date
select new
{
score = gp.Sum(_score => _score.Score),
store = gp.Max(_store => _store.Name),
Date = gp.Max(_Date => _Date.Date)
}).OrderByDescending(_score => _score.score)
.ToList().
ForEach(item => _timeLiner.Add(new TimeLiner()
{
id = _id++.ToString(),
start = item.auditDate.ToString(),
title = "TopStore: " + item.store
}
我.Take(1).ToList()
試過,Single()
,SingleOrDefault()
的前1名,First()
但我沒有得到所需的輸出。相反,我得到的
S1 6 15/02/2013
S2 0 15/02/2013
感謝您的幫助。根據我的要求,這是準確的。 – Hussain