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;
}
执行返回查询后,我得到了
查询'GetModelsInBrand'的加载操作失败。 LINQ to Entities无法识别该方法。“
任何人都可以帮忙纠正吗?
答案 0 :(得分:3)
可能LINQ到实体不支持您在ProductByModelEqualityComparer
中编写的代码。您可以在致电AsEnumerable
之前致电Distinct
,这将使Distinct
通过linq-to-objects执行,但不再是IQueryable
:
var enumerable = query.AsEnumerable().Distinct(new ProductByModelEqualityComparer()); return query; }