У меня есть List = new List();Поиск максимального значения в linq
public class Student
{
public string Id { get; set; }
public string name { get; set; }
public string subject { get; set; }
public string marks { get; set; }
}
Моя цель
Найти студента с самым высоким средним
Добавление выборки данных
i.Add(new List<Student> { Id=1,Name= "Maddy",Subject="English",Marks=87 };
i.Add(new List<Student> { Id=1,Name= "Maddy",Subject="Science",Marks=81 };
i.Add(new List<Student> { Id=2,Name= "Mathew",Subject="Maths",Marks=83 };
i.Add(new List<Student> { Id=2,Name= "Mathew",Subject="Science",Marks=80 };
Что я пытался
var x= i.GroupBy(i=>i.Id)
.Select(g=> new
{
MaxAverage= g.Max(g.Average(i=>i.Marks))
}
Как намек, вы хотите работать в среднем для каждого студента, а затем выбрать первый из студентов Упорядочены по их среднему значению. –
Является ли 'mark'' строкой' или 'int'? Каким должен быть результат, идентификатор студента или имя или что? –
Вы должны попытаться сделать это без Linq first – Sehnsucht