我有以下两个类(数据库对象):
class Person
{
public int Id;
public List<Car> CarsOwned;
}
class Car
{
public string Name;
}
我希望能够搜索 ID 为 1 的人,并返回此人拥有的所有名称为 ford 和 ferrari 的汽车。我想要返回 person 对象。
我目前拥有的:
List<string> carsFilter = new List<string>();
carsFilter.Add("Ford");
carsFilter.Add("Ferrari");
person.Where(x => x.Id == 1).CarsOwned.Where(y => carsFilter.Contains(y.Name));
如何返回 person 对象而不是 Cars 对象? (Person 是一个 IQueryable,如果可能的话,我希望查询在一个数据库事务中完成)
请您参考如下方法:
person.Where(x => x.Id == 1 && CarsOwned.Any(c => carsFilter.Contains(y.Name)));
