Фильтр LINQ-to-NHibernate IQueryable по составному полю - ошибка «Не удалось разрешить свойство» - PullRequest
0 голосов
/ 15 июля 2010

Быстрый фон - у меня есть форма, которая предлагает пользователям несколько дополнительных опций, и метод поиска в моем сервисе, который принимает все эти поля и добавляет необходимые условия Where () в основной список IQueryable.

Один из этих фильтров представляет собой список строк, которые необходимо сравнить с комбинацией трех различных полей в IQueryable. Вот код, выдающий ошибку « не удалось разрешить свойство »:

var searchResults = _transactionHeaders.Retrieve();
if (subgroups.Any())
    searchResults = searchResults.Where(s => subgroups.Contains(s.CustomerType + s.RusNumber + s.GroupNumber));

return searchResults.ToList()

Я прочитал несколько постов, в которых предлагается создать псевдоним для любых свойств, которые не отображаются напрямую в отображении NHibernate. Я не совсем уверен, что это решение моей проблемы.

Предложения? Спасибо за любую помощь, которую вы можете предложить.

1 Ответ

0 голосов
/ 10 января 2011

Linq2Nhibernate не может понять вызов метода .Contains.Вам придется изменить свой запрос, чтобы он был совместим с linq2nhibernate.

...