我有一个List<Employee> ListEmployee
,我正在使用以下代码:
public void Func(Contract cont) //the contract have the employee's ID in it
{
Employee emp = ListEmployees().Find(e => (e.ID_.Equals(cont.EmployeeId_)));
问题是,尽管列表中的员工ID与合同中的员工具有相同的ID,但List<>.Find()
返回null。
Lambda表达式或其他问题是否存在问题?
编辑:
Contract
类具有类型为int[]
“cont.EmployeeId_
”的员工的ID号。
Employee.ID
也是int[]
类型。
我正在尝试从列表中获取他的ID与合同中的ID相同的员工。
答案 0 :(得分:1)
由于问题似乎没有详细说明,可能不是使用cont
而是使用ctr
所以不要这样:
Employee emp = ListEmployees().Find(e => (e.ID_.Equals(cont.EmployeeId_)));
你的意思是:
Employee emp = ListEmployees().Find(e => (e.ID_.Equals(ctr.EmployeeId_)));