从列表中获取不同的值
public List<MAS_EMPLOYEE_TRANSFER> GetEmployeeTransferListForHR(TimecardDataContext TimecardDC)
{
List<MAS_EMPLOYEE_TRANSFER> objEmployeeTransferList = null;
try
{
objEmployeeTransferList = new List<MAS_EMPLOYEE_TRANSFER>();
objEmployeeTransferList = TimecardDC.MAS_EMPLOYEE_TRANSFER.Where(
employee =>
employee.HR_ADMIN_IND=="Y").ToList();
}
finally
{
}
return objEmployeeTransferList;
}
它显示hr管理指示符= yes的所有值列表。但是我必须从表MAS_EMPLOYEE_TRANSFER
得到hr admin=yes
和不同的(empid)。如何从objEmployeeTransferList
获得截然不同的empId
。从列表中获取不同的值
List<int> ids = objEmployeeTransferList
.Select(e => e.empId)
.Distinct()
.ToList();
你也可以不与所有管理记录创建内存员工列表使这个服务器端:
List<int> ids = TimecardDC.MAS_EMPLOYEE_TRANSFER
.Where(e => e.HR_ADMIN_IND == "Y")
.Select(e => e.empId)
.Distinct()
.ToList();
从objEmployeeTransferList获取该列表后。然后只有我必须通过distict(empid)过滤。我该如何做到这一点。 – 2013-02-26 10:31:17
@SaiAyyappsSekaran第一个示例从objEmployeeTransferList – 2013-02-26 10:45:56
你有没有尝试:
objEmployeeTransferList = TimecardDC.MAS_EMPLOYEE_TRANSFER.Where(
employee => employee.HR_ADMIN_IND=="Y").Distinct().ToList();
获取唯一ID这是错误的。输出将只是相同的。 – 2013-02-26 10:34:05
它不适合我。我想在C#对象列表中做同样的事情。 – 2017-06-29 10:50:02
试着做'groupby'empId然后选择。看看[LINQ选择清单不同?](http://*.com/questions/7572006/linq-select-distinct-from-a-list)将帮助你 – 2013-02-26 10:18:41
看看这个问题:http:// *.com/questions/912188/linq-distinct-by-name-for-populate-a-dropdown-list-with-name-and-value – 2013-02-26 10:20:20