public IQueryable<Product> GetModelsInBrand(int BrandId)
{
IQueryable<Product> query =
from Product
in ObjectContext.Products.Where(p => (p.BrandId == BrandId))
orderby Product.Model
select Product;
query = query.Distinct(new ProductByModelEqualityComparer());
return query;
}
执行返回查询后,我得到
Load operation failed for query 'GetModelsInBrand'. LINQ to Entities does not recognize the method."
谁能帮忙修改一下吗?
最佳答案
LINQ-to-entities 可能不支持您在 ProductByModelEqualityComparer
中编写的代码。您可以在调用 Distinct
之前调用 AsEnumerable
,这将使 Distinct
通过 linq-to-objects 执行,但它不会是 IQueryable
不再:
var enumerable = query.AsEnumerable().Distinct(new ProductByModelEqualityComparer()); return query; }
关于c# - LINQ to Entities 无法识别该方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5478627/