В основном я хочу написать запрос linq для заказа количества дней, в которые они были представлены. Но у меня есть эти шесть временных фильтров. Сегодня, вчера, в текущем месяце, в предыдущем месяце, в текущем году, в предыдущем году. Итак, теперь у меня есть эти запросы, которые я упростил, но перед этими запросами ниже я фактически заказываю этих сотрудников по разным аспектам и после того, как заказ как вы можете видеть, что я присвоить звание, а затем в то же самое время узнать его количество (которые могут или не могут быть использованы для ранжирования их позже) -Как бы написать этот динамический запрос linq?
var result=datacontext.Employee(c=>c.Company.Id==companyId).Select((k, index) => new EmployeeDTO()
{
EmployeeId=k.Employee.Id,
CompanyId=Employee.Company.Id
PresentCount=(from e in employeeAttendance
where d.RecNum == k.recnum
&& d.date_present.Year == DateTime.Today.Year
&& d.date_present.Month == DateTime.Today.Month
&& d.date_present.Day == DateTime.Today.Day
select d).Count()
}
так что теперь, когда фильтр сказать предыдущий год у меня есть -
var result=datacontext.Employee(c=>c.Company.Id==companyId).Select((k, index) => new EmployeeDTO()
{
Position=
EmployeeId=k.Employee.Id,
CompanyId=Employee.Company.Id
PresentCount=(from e in employeeAttendance
where d.RecNum == k.recnum
&& d.date_present.Year == (DateTime.Today.Year-1)
}
и если есть его на текущем месяце у меня есть -
var result=datacontext.Employee(c=>c.Company.Id==companyId).Select((k, index) => new EmployeeDTO()
{
EmployeeId=k.Employee.Id,
CompanyId=Employee.Company.Id
PresentCount=(from e in employeeAttendance
where d.RecNum == k.recnum
&& d.date_present.Month == DateTime.Today.Month
&& d.date_present.Year == DateTime.Today.Year
}
Я в основном хочу объединить все это в одном запросе, имея в основном динамическое предложение для определения текущего счета?