将 lambda 表达式转换为 linq c#

我有学生名单和讲师名单,我用双 foreach 语句编写了代码。


有没有办法使用 Lambda 表达式来简化此代码?


public void GetLecturersWorkloadStatistics(List<Student> studentList, List<Lecturer> lecturerList)

{

    foreach (Lecturer lecturer in lecturerList)

    {

        foreach (Student student in studentList)

        {

            if (lecturer.ModuleName == student.ModuleName && lecturer.LastName == student.LecturerLastName &&

                lecturer.FirstName == student.LecturerFirstName)

            {

                lecturer.Credits = lecturer.Credits + lecturer.ModuleValueInCredits;

            }

        }

    }

}



HUWWW
浏览 152回答 2
2回答

炎炎设计

这与您的问题的输出完全相同,仅使用 lambda 表达式。&nbsp; &nbsp; studentListBySelectedLecturer = (from stud in linkedList&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; where stud.LecturerFirstName == lecturerInformation[0] &&&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; stud.LecturerLastName == lecturerInformation[1] ||&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; stud.LecturerFirstName == lecturerInformation[1] &&&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; stud.LecturerLastName == lecturerInformation[0]&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; select stud).ToList();&nbsp; &nbsp; return studentListBySelectedLecturer;
打开App,查看更多内容
随时随地看视频慕课网APP