我正在使用 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 ,不是匿名类型。
非常感谢任何帮助。
感谢。
答案 0 :(得分:4)
您是否尝试过使用GroupBy
?
_UoW.tblcoursRepo.All.GroupBy(c => c.MainHeadingId)
.Select(g => g.FirstOrDefault())