LINQ Where子句问题

时间:2010-04-30 08:18:28

标签: vb.net winforms linq where-clause

当尝试使用VB.net中的LINQ进行查询以便选择以前填充数据集的数据表的某些员工时,我在使用where子句时遇到问题。我想要的是选择数据表的所有员工,除了那些出现在名为CurrentExcludedEmployeesLst的被排除员工列表中的员工。所以我按照以下步骤操作:

1.-首先,我用数据集填充我的数据表“员工”。我的数据集有一个包含三列的表,EMPLID,NAME,DEPT。

          Dim employees As DataTable
          employees = Me.MyDataset.Tables("EMPLOYEESTABLE")

2.-我构建了查询:

    Dim employeeCollection As EnumerableRowCollection

    employeeCollection = 
          employees.AsEnumerable() _
            .Select(Function(employee As DataRow) New With _
            { _
              .EMPLID = employee.Field(Of String)("EMPLID"), _
              .NAME = employee.Field(Of String)("NAME"), _
              .TITLE = employee.Field(Of String)("DEPT") _
            }).Where(Function(employee As DataRow) NOT 
            CurrentExcludedEmployeesLst.Contains(employee.Field(Of String)("EMPLID")))

如果我没有把Where子句放在完美的位置。我的问题是当我想使用Where子句进行过滤时。

谢谢!

1 个答案:

答案 0 :(得分:1)

如果我理解正确,你应该尝试在选择之前放置你的Where子句。

相关问题