Что не так с этим HQL-запросом в версии 2.1.2.4 NHibernate? - PullRequest
1 голос
/ 04 августа 2010

Таким образом, запрос hql ниже выдает исключение Antlr.Runtime.NoViableAltException. Я смог определить, что проблема связана с полем member.LastName в заказе в порядке. Если удалить member.LastName из заказа, запрос будет выполнен. Этот HQL прекрасно работал в более ранней версии NHibernate, но он сломался с обновлением до NHibernate 2.1.2.4. Как я могу включить свойство member.LastName без исключения? Любая помощь очень ценится. Спасибо!

select chartAssignmentLogRecord 
from ChartAssignmentLogRecord chartAssignmentLogRecord 
inner join chartAssignmentLogRecord.Measure as measure 
inner join measure.ProviderLocation as providerLocation
inner join providerLocation.Provider as provider 
inner join providerLocation.Address as address 
inner join measure.Member as member
where chartAssignmentLogRecord.AssignedDate >= :startDate  and chartAssignmentLogRecord.ChartModifiedStatus =  :modifiedStatus  and chartAssignmentLogRecord.AssignedDate =(select max(subChartAssignmentLogRecord.AssignedDate) from ChartAssignmentLogRecord subChartAssignmentLogRecord where subChartAssignmentLogRecord.Measure=chartAssignmentLogRecord.Measure) 
order by chartAssignmentLogRecord.AssignedDate desc, provider.LastName, address.AddressLine1, member.LastName

1 Ответ

1 голос
/ 04 августа 2010

Благодаря DanP я использовал measure.Member.LastName вместо member.LastName в предложении order by.Не уверен, почему это исправило это, поскольку, насколько я знаю, мой HQL должен был быть действительным и определенно действительным в более ранних версиях NHibernate.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...