如何跳过并采取工作我有以下Linq查询。它的作品很好,但似乎令人困惑的事情是和take()
函数如何在linq中工作。 这里是我的查询linq
(from GRD in _tblAcademicYears.GetQueryable()
where GRD.SchoolID == intSchoolID
select new AcademicYearsModel
{
AcademicYearID = GRD.AcademicYearID,
SchoolID = GRD.SchoolID,
AcademicYearName = GRD.AcademicYearName,
AcademicYearStart = GRD.AcademicYearStart,
AcademicYearEnd = GRD.AcademicYearEnd,
AcademicYearRemarks = GRD.AcademicYearRemarks,
IsActive = GRD.IsActive,
CreatedOn = GRD.CreatedOn,
CreatedBy = GRD.CreatedBy,
ModifiedOn = GRD.ModifiedOn,
ModifiedBy = GRD.ModifiedBy
}
).Where(z => z.AcademicYearName.Contains(param.sSearch) || z.AcademicYearStart.ToString().Contains(param.sSearch)
|| z.AcademicYearEnd.ToString().Contains(param.sSearch) || z.AcademicYearRemarks.Contains(param.sSearch))
.Skip(param.iDisplayStart).Take(param.iDisplayLength).ToList();
这个查询如何从数据库中获取记录。 它会从数据库中获取所有记录,然后将应用skip()
和take()
。 否则只会让拍摄与在skip()
和take()
它根据您的where查询从数据库中获取记录并将其保存为可查询,然后应用跳过并转到特定数据 –
除了规范之外,将发生什么取决于您正在使用的查询提供程序的具体情况正在执行的查询。记录生成的查询以查明实际发生的情况。 – Servy