由网友(姐丶狠低調)分享简介:我想使用LINQ来获得员工名单,这些员工必须在 TypeOfWorks 列出 typeofWork 通过(编号)的参数公共类员工{公共虚拟IList的< EmployeeTypeOfWork> TypeOfWorks {获得;组; }}公共类EmployeeTypeOfWork{公共虚拟的Guid标识{获取...
我想使用LINQ来获得员工名单,这些员工必须在 TypeOfWorks
列出 typeofWork
通过(编号
)的参数
公共类员工
{
公共虚拟IList的< EmployeeTypeOfWork> TypeOfWorks {获得;组; }
}
公共类EmployeeTypeOfWork
{
公共虚拟的Guid标识{获取;组; }
公共虚拟员工员工{获得;组; }
公共虚拟TypeOfWork TypeOfWork {获得;组; }
}
公共类TypeOfWork
{
公共虚拟的Guid标识{获取;组; }
}
公众的IList<员工> ListWithTypeOfWork(IList的<员工>员工,
GUID typeOfWorkId)
{
?????
}
我试过,但我错过了什么,我认为
VAR RES =由对企业员工
其中,(从页中p.TypeOfWorks
其中,pp.TypeOfWork.Id == GUID选择pp.Id)。载(p.Id)
选择磷;
解决方案
公开的IEnumerable<员工> ListWithTypeOfWork(IList的<员工>员工的Guid typeOfWorkId)
{
从EMP在员工返回
其中,emp.TypeOfWorks.Any(X =>!x =空&功放;&安培; x.Id == typeOfWorkId)
选择EMP;
}
I'd like to get with LINQ an employee list, these employees must have in the TypeOfWorks
list the typeofWork
passed (Id
) in argument
public class Employee
{
public virtual IList<EmployeeTypeOfWork> TypeOfWorks { get; set; }
}
public class EmployeeTypeOfWork
{
public virtual Guid Id { get; set; }
public virtual Employee Employee { get; set; }
public virtual TypeOfWork TypeOfWork { get; set; }
}
public class TypeOfWork
{
public virtual Guid Id { get; set; }
}
public IList<Employee> ListWithTypeOfWork(IList<Employee> Employees,
Guid typeOfWorkId)
{
?????
}
I tried this but I missed something I think
var res = from p in Employees
where (from pp in p.TypeOfWorks
where pp.TypeOfWork.Id == guid select pp.Id).Contains(p.Id)
select p;
解决方案
public IEnumerable<Employee> ListWithTypeOfWork(IList<Employee> Employees, Guid typeOfWorkId)
{
return from emp in Employees
where emp.TypeOfWorks.Any(x => x != null && x.Id == typeOfWorkId)
select emp;
}
相关推荐
最新文章