Я использую Fluent NHibernate с DiscriminateSubClassesOnColumn () для поддержки подклассов. Столбец, используемый для различения подклассов, не сопоставлен с фактическим свойством объекта.
Как мне создать запрос, который возвращает только объекты данного типа?
Вот моя попытка, где propertyName - это имя моего различающего столбца, а value - это имя типа:
return _db.CreateCriteria<T>()
.Add(Restrictions.Eq(propertyName, value))
.List<T>();
Однако это дает мне ошибку «не удалось разрешить свойство: Тип: [тип моей сущности]», потому что сама сущность не имеет свойства. Если я добавляю свойство к своей сущности и отображаю его, я получаю еще одну ошибку: «System.IndexOutOfRangeException: недопустимый индекс 7 для этой коллекции SqlParameterCollection с счетом = 7».