MonoRail ActiveRecord/NHibernate расчет в предложении, где

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

var criteria = DetachedCriteria.For<Core.Models.Business>();      criteria.Add(Restrictions.Le(String.Format(@"(3959*acos(cos(radians({0}))*cos(radians(Latitude))*cos(radians(Longitude)-radians({1}))
                    +sin(radians({0}))*sin(radians(Latitude))))", coordinates.Latitude, coordinates.Longitude), radiusInMiles));

Проблема в том, что метод Restrictions.Le ActiveRecord/NHibernate ожидает имя свойства для первого параметра, поэтому я не могу поместить формулу туда. Как бы я сделал что-то подобное?

Спасибо! Джастин

1 ответ

Решение

Попробуйте использовать Expression.Sql, Пара примеров:

Другие вопросы по тегам