Сводная функция avg в HQL, вызывающая проблемы в NHibernate, что не так с моим запросом? - PullRequest
1 голос
/ 26 августа 2010

Возникли проблемы с HQL-запросом.Если я уберу из него значение avg (..), он вернет все пустые веса, поэтому проблема в функции avg.Кажется, в документах Nhibernate ясно, что я могу выполнять агрегатную функцию для элемента select следующим образом.Моя проблема как-то связана с query.ToList не нравится возвращать список одной вещи?Я просто получаю сообщение «Не удалось выполнить запрос [SQL: SQL недоступен]».

 public List<T> HQLQuery<T>(string HQL) //in UnitOfWork
    {
        var query = session.CreateQuery(HQL);
        return query.List<T>().ToList<T>();


    }

   public static float estimateTruckEmptyWeight(int vehicleID)
    {
        UnitOfWork uow = new UnitOfWork();
        List<float> results = uow.HQLQuery<float>("select avg(ev.EmptyWeight) from FieldSystemCore.Domain.EmptyVehicle ev where ev.Vehicle.ID = '" + vehicleID + "'");
        return results[0];

    }

1 Ответ

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

Проблема оказалась в том, что в Nhibernate avg возвращает double, а не float.

Я бы хотел, чтобы исключение дало мне понять, что это так.

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