LINQ Можно ли проверить в одной последовательности сгруппированные элементы? - C#
Формулировка задачи:
Имеется коллекция объектов типа:
Я ее группирую по номеру
В итоге у меня получается несколько сгруппированных последовательностей.
Эти сгруппированные последовательности должны быть одинаковые по количеству. Как это проверить?
List<Question> questionsInFiles = new List<Question>();
public class Question
{
public Question(string number, string variant, string description)
{
Number = number;
Variant = variant;
Description = description;
}
public string Number { get; set; }
public string Variant { get; set; }
public string Description { get; set; }
}questionsInFiles.GroupBy(x=>x.Number)
Решение задачи: «LINQ Можно ли проверить в одной последовательности сгруппированные элементы?»
textual
Листинг программы
var groups = questionsInFiles.GroupBy(x=>x.Number); var counts = from @group in groups select @group.Count(); bool allGroupsHaveSameLength = counts.Distinct().Count() == 1;