[英]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;
}
它顯示 hr admin indicator=yes 的所有值列表。 但是我必須從MAS_EMPLOYEE_TRANSFER
表中獲取hr admin=yes
和 distinct(empid) 。 如何獲得不同empId
從該objEmployeeTransferList
。
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();
使用 GroupBy 區分
objEmployeeTransferList.GroupBy(x => x.empId).Select(g => g.First()).ToList();
你有沒有試過:
objEmployeeTransferList = TimecardDC.MAS_EMPLOYEE_TRANSFER.Where(
employee => employee.HR_ADMIN_IND=="Y").Distinct().ToList();
linq 中有一個獨特的方法應該可以解決問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.