3
    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 のすべての値のリストが表示されます。しかしhr admin=yes、テーブルから取得して区別する必要がありますMAS_EMPLOYEE_TRANSFERempIdと区別する方法objEmployeeTransferList

4

5 に答える 5

6

作ってみたり

.Distinct().ToList();

ここで参照できますLINQ: Distinct values

于 2013-02-26T10:19:29.303 に答える
4
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();
于 2013-02-26T10:18:31.853 に答える
0

linq には、このトリックを実行する別のメソッドがあります。

http://msdn.microsoft.com/en-gb/library/bb348436.aspx

于 2013-02-26T10:20:30.123 に答える
0

試してみましたか:

objEmployeeTransferList = TimecardDC.MAS_EMPLOYEE_TRANSFER.Where(
   employee => employee.HR_ADMIN_IND=="Y").Distinct().ToList();     
于 2013-02-26T10:19:06.893 に答える