获取Linq中的常用列表

时间:2017-07-11 22:28:17

标签: c# linq

我有StuedntInfo表的列表

enter image description here

我有班级列表

var classesList = GetClasses2nd(2017);

Reasult是

  • ClassId = 5
  • ClassId = 4
  • ClassId = 8

现在是否可以动态获取StudentInfo记录中哪些类ID存在的StudentInfo记录列表? 如果可能的话也可以获得Location对象列表?

2 个答案:

答案 0 :(得分:0)

我必须对你的模型/数据库上下文做一些假设,但这样的事情应该有效:

var classesList = GetClasses2nd(2017);

//get the class Ids
var classIds = classesList.Select(x => x.ClassId);

var students = db.Students
                .Include(x=>x.Location) //assuming you have this navigation property on your model
                .Where(x=> classIds.Contains(x.ClassID))
                .ToList();

注意:只有在模型上设置了导航属性时,Include才有效。

https://msdn.microsoft.com/en-us/library/jj574232(v=vs.113).aspx

答案 1 :(得分:-1)

尝试代码:

  var classidList= ( From p in db.student
                     group p by p.studentid into jj 
                    select new {
                                classid=jj.max(c=>c.classid)
                               }).ToList();