[英]How to turn this SQL query into a Entity Framework lambda expression?
如何在實體框架中使用 lambda 表達式進行此查詢?
select
s.StudentID, s.StudentName, s.StudentSurName, s.Point
from
Student s
join
StudentContest sc on s.StudentID = sc.StudentId
join
Contest c on c.ContextID = sc.ContestId
where
c.ContextDate < GETDATE()
我根據類制作了 model 以顯示結果
class Program
{
static void Main(string[] args)
{
DateTime date = DateTime.Now;
DataBase db = new DataBase();
var results = (from s in db.Student
join sc in db.StudentContest on s.StudentID equals sc.StudentId
join c in db.Contest.Where(x => x.ContextDate < date) on sc.ContextID equals c.ContestId
select new { StudentID = s.StudentID, StudentName = s.StudentName, StudentSurName = s.StudentSurName, Point = s.Point }
).ToList();
}
}
public class DataBase
{
public List<StudentContest> StudentContest { get; set; }
public List<Student> Student { get; set; }
public List<Contest> Contest { get; set; }
}
public class StudentContest
{
public string StudentId { get; set;}
public string ContextID { get; set;}
}
public class Student
{
public string StudentID { get; set;}
public string StudentName { get; set;}
public string StudentSurName { get; set;}
public string Point { get; set;}
}
public class Contest
{
public string ContestId { get; set;}
public DateTime ContextDate { get; set; }
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.