LINQ to Entities не распознает метод - PullRequest
2 голосов
/ 30 марта 2011
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 не распознает метод. "

Может кто-нибудь помочь исправить это?

1 Ответ

3 голосов
/ 30 марта 2011

Возможно, LINQ-to-entity не поддерживает код, который вы написали в ProductByModelEqualityComparer.Вы можете вызвать AsEnumerable перед вызовом Distinct, это сделает Distinct выполненным через linq-to-objects, но больше не будет IQueryable:

var enumerable = query.AsEnumerable().Distinct(new ProductByModelEqualityComparer()); return query; }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...