Linq to Entities在没有匿名类型的列上不同

时间:2013-02-26 11:08:41

标签: entity-framework linq-to-entities distinct anonymous-types

我正在使用 Entity Framework 5.0 ,我希望返回一个对象列表,但是,我想对其中每个对象上的一个属性执行 DISTINCT清单。

我知道在 Stackoverflow 上有一些类似于我的问题,但是,我仍然在努力解决这个问题。

目前我的查询看起来像这样

public IList<tblcours> GetAllCoursesByOrgID(int id)
{
     return _UoW.tblcoursRepo.All.Where(c => c.tblCourseCategoryLinks.Any(cl => cl.tblUnitCategory.tblUnit.ParentID == id))
            .OrderBy(c => c.CourseTitle)
            .ToList();
}

但是,我需要在属性 MainHeadingID 上执行 DISTINCT ,以删除已经具有相同ID 的所有对象,但仍然使用所有对象返回整个对象它的属性

最好,我想从我的方法中看到 IList 不是匿名类型

非常感谢任何帮助。

感谢。

1 个答案:

答案 0 :(得分:4)

您是否尝试过使用GroupBy

_UoW.tblcoursRepo.All.GroupBy(c => c.MainHeadingId)
                     .Select(g => g.FirstOrDefault())