Цикл foreach и ошибка "тип не содержит открытого определения для GetEnumerator" - C#

Узнай цену своей работы

Формулировка задачи:

Имеется список, элементом которого является объект с двумя полями. для доступа к полям класса организуется двойной цикл foreach ,но при явном указании типа возникает ошибка: Оператор foreach не работает с переменными типа "WindowsFormsApplication1.ResultsOfExams", поскольку "WindowsFormsApplication1.ResultsOfExams" не содержит открытого определения для "GetEnumerator"
foreach (var student in listExams)
            {
                foreach (var roe in student)//ошибка
                {
                    if (roe.LessonCode !=  ExamsCounter().   )//тут тоже как то надо получить для условия доступ к полям объекта класса LessonsInfo списка, который возвращает метод 
                    {
 
                    }
                    dataExams = new ResultsOfExams();
                    dataExams.StudentCode = roe.StudentCode;
                    //dataExams.ExamData = val.ExamData;
                    dataExams.LessonCode = roe.LessonCode;
                    listStudentsDebt.Add(dataExams);
                    listBox1.Items.Add(roe.StudentCode + "\r    " + roe.LessonCode);
                }
            }
 
//---------------
   public class ResultsOfExams
    {
        public int StudentCode { get; set; }
        public string ExamData { get; set; }
        public int LessonCode { get; set; }
    }
 
public class LessonsInfo
    {
        public int LessonCode { get; set; }
        public string LessonName { get; set; }
    }

Решение задачи: «Цикл foreach и ошибка "тип не содержит открытого определения для GetEnumerator"»

textual
Листинг программы
var group_student_list =
                from student in listExams
                group student by student.StudentCode into DebtGroup
                where DebtGroup.Count() < ExamsCounter().Count()
                orderby DebtGroup.Key ascending
                select DebtGroup;
 
            foreach (var studentInGroup in group_student_list)
            {
                foreach (var roeInGroup in studentInGroup)
                {
                    foreach (var roeInList in listExams) 
                    {
                        if (roeInList.LessonCode != roeInGroup.LessonCode)
                        { }
                    }
                }
            }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.429 из 5
Похожие ответы