如何编写LINQ查询以与值列表进行比较?

时间:2010-10-18 16:43:57

标签: .net linq list compare

我基本上选择了正在传递的公司的所有员工 -

CompanyListIds - 包含所有公司ID的列表..

var result=DataContext.Employee(e=>e.CompanyId==companyId).ToList();

以上是我从一家公司中选择的查询,现在我将如何修改它以与将要传递的所有公司名称进行比较。我将如何使用contains在这里...感谢..

3 个答案:

答案 0 :(得分:1)

如果您在数据库中设置了正确的密钥并在实体图中配置了导航属性,那么您应该能够:

var result = DataContext.Companies.SelectMany(c => c.Employees);

但如果没有,你可以简单地使用Contains:

var result = DataContext.Employee
                        .Where(e => CompanyListIds.Contains(e.CompanyId));

答案 1 :(得分:1)

var result=(from e in DataContext.Employee
           where CompanyListIds.Contains(e.CompanyId)).ToList();

答案 2 :(得分:1)

试试这个:

var result= DataContext.Employee.Where(e=> CompanyListIds.Contains(e.CompanyId)).ToList();