我正在使用 LINQ 从数据库中检索记录。一切工作正常,除了我需要在单个查询中应用不同的过滤器。如果参数不Null 大于零,则显示所有员工记录。否则,如果它们为零Null或小于零,则不应用过滤器。以下是我目前的做法:
public ActionResult GetEmployee(int? JobTitleId, int? GenderId)
{
var Emloyees = db.Employees.ToList();
if(JobTitleId > 0)
{
Emloyees = Emloyees.Where(e => e.JobTitleId == JobTitleId).ToList();
}
if(GenderId> 0)
{
Emloyees = Emloyees.Where(e => e.GenderId == GenderId).ToList();
}
}
Run Code Online (Sandbox Code Playgroud)
有什么方法可以将其应用于单个查询吗?我想做的是JobTitleId如果然后显示其他记录,否则过滤它们。GenderIdNull