我正在尝试建立一个查询,其中有一个学生姓名,然后是他所属的俱乐部的嵌套集合。我想使用OrderByDescending组织此集合。我对提供括号的内容感到困惑。

public void GetStudentsClubNameRev()
        {
            try
            {
                using (SchoolContainer = new SchoolContainer())
                {

                    var query = from student in SchoolContainer.Students
                                select new
                                {
                                    StudentName = student.Name,
                                    ClubName = student.StudentClubMatches
                                        .Where(s =>s.StudentId == student.Id)
                                        .Select(c => c.Club.Name)
                                        .OrderByDescending(o => "Name")
                                };
                }
            }
            catch (Exception ex)
            {

            }
        }


在.OrderByDescending(o =>“ Name”)中,我不知道我的谓词是什么。我想说的是名称,即俱乐部名称。但是我收到错误消息是因为我不明白我想要什么。

最佳答案

如果在Select之前订购OrderByDescending,也可以执行以下操作:

var query = from student in SchoolContainer.Students
    select new
    {
        StudentName = student.Name,
        ClubName = student.StudentClubMatches
            .Where(s =>s.StudentId == student.Id)
            .OrderByDescending(c => c.Club.Name)
            .Select(c => c.Club.Name)
    };


干杯

关于c# - 使用LINQ .OrderByDescending无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21960501/

10-10 18:28