对包含在DBQuery上的列表执行包含

时间:2016-02-03 11:45:59

标签: c# entity-framework linq

我有一个DbQuery,我想用我的DbQuery Item填充另一个列表,其中包括:

var carsList= DbContext.Cars.Where(e=> e.brand == brand);
var myFiltredcarList = new List<Car>();

foreach(var car in carsList)
{
//add items in list according to a condition
myFiltredcarList.Add(car);

}

我现在想要做以下事情:

myFiltredcarList.Include("Brands");

我不能将myFiltredcarList用作List,我想让我的carsList出价在我的filtred列表中做一个include(myFiltredcarList)

有可能吗? 如果这是我需要改变的?

1 个答案:

答案 0 :(得分:1)

这是不可能的。

首先,Include方法在IQueryable<T>上定义,其次只适用于 LINQ To Entities 查询,而您的列表显然不是。

唯一的方法是,如果您可以将过滤条件嵌入到原始查询中,就像这样

var myFiltredcarList= DbContext.Cars
    .Include("Brands")
    .Where(e => e.brand == brand && some condition)
    .ToList();