private static void QuestionSortTest()
{
List<QuestionHistory> qhl = new List<QuestionHistory>();
qhl.Add(new QuestionHistory { User = "U1", UpdateDate = DateTime.Now.AddDays(-1) });
qhl.Add(new QuestionHistory { User = "U1", UpdateDate = DateTime.Now.AddDays(2) });
qhl.Add(new QuestionHistory { User = "U2", UpdateDate = DateTime.Now.AddDays(1) });
qhl.Add(new QuestionHistory { User = "U2", UpdateDate = DateTime.Now.AddDays(-3) });
qhl.Add(new QuestionHistory { User = "U3", UpdateDate = DateTime.Now.AddDays(4) });
qhl.Add(new QuestionHistory { User = "U3", UpdateDate = DateTime.Now.AddDays(-5) });
//Console.WriteLine(qhl.OrderByDescending(q => q.UpdateDate).ToList()[0].UpdateDate.ToString());
var groupedResult =
from q in qhl
group q by new { User = q.User }
into mostChanges
select new
{
User = mostChanges.Key.User,
UpdateDate = mostChanges.Max(d=>d.UpdateDate)
};
foreach (var q in groupedResult)
{
Console.WriteLine(q.User + ":" + q.UpdateDate.ToString());
}
}