Linq到EF查询带标准过滤器

时间:2016-06-06 06:15:00

标签: c# sql linq entity-framework-5

我有两个表 - 如数据库

中所示

|国家| ID int |名称varchar |

| Car | ID int |名称varchar | CountryID int FK to Country

  1. 我需要选择ID为1的国家/地区的所有汽车

  2. 我还需要ID为2和3的国家/地区的所有汽车(汽车)都在(4,5)

  3. 使用EF i有以下查询。

    "pickup_delivery_date_and_time_to(only time)"

    有没有其他方法可以做到这一点而不是使用联盟?我需要一个案例陈述,例如当国家ID不等于(1)然后过滤汽车身份(4,5)时,这是如何实现的?谢谢。

1 个答案:

答案 0 :(得分:3)

如果我理解你的问题,可能就是这样:

List<int> listOfCountries = new List<int> { 2,3 };
List<int> listOfCarIds = new List<int> { 4,5 };

var query = from car in context.Cars.AsNoTracking()
where car.Country.Id = 1 || (listOfCountries.Contains(car.Country.Id) && listOfCarIds.Contains(car.Id))