[英]Get distinct values from list
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;
}
It shows all list of values where hr admin indicator=yes.它显示 hr admin indicator=yes 的所有值列表。 But I have to get hr admin=yes
and distinct(empid) from the table MAS_EMPLOYEE_TRANSFER
.但是我必须从MAS_EMPLOYEE_TRANSFER
表中获取hr admin=yes
和 distinct(empid) 。 How to get distinct empId
from the the objEmployeeTransferList
.如何获得不同empId
从该objEmployeeTransferList
。
Have try making it尝试制作
.Distinct().ToList();
You can refer hereLINQ: Distinct values您可以在此处参考LINQ:不同的值
List<int> ids = objEmployeeTransferList
.Select(e => e.empId)
.Distinct()
.ToList();
Also you can make this on server side without creating in-memory employee list with all admin records:您也可以在服务器端进行此操作,而无需创建包含所有管理员记录的内存员工列表:
List<int> ids = TimecardDC.MAS_EMPLOYEE_TRANSFER
.Where(e => e.HR_ADMIN_IND == "Y")
.Select(e => e.empId)
.Distinct()
.ToList();
使用 GroupBy 区分
objEmployeeTransferList.GroupBy(x => x.empId).Select(g => g.First()).ToList();
Have you try:你有没有试过:
objEmployeeTransferList = TimecardDC.MAS_EMPLOYEE_TRANSFER.Where(
employee => employee.HR_ADMIN_IND=="Y").Distinct().ToList();
There is a distinct method in linq which should do the trick. linq 中有一个独特的方法应该可以解决问题。
http://msdn.microsoft.com/en-gb/library/bb348436.aspx http://msdn.microsoft.com/en-gb/library/bb348436.aspx
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.