NHibernate Удалить с арифметикой даты, используя HQL - PullRequest
1 голос
/ 21 октября 2010

Я оглянулся и не могу найти слишком много. Но возможно ли сделать что-то подобное, используя HQL в nHibernate:

Session.CreateQuery (@ "УДАЛИТЬ ИЗ MyObject mo ГДЕ (mo.AlteredDate + mo.ExpiryDetails.ExpiryTimestamp) <: pNow ") .SetDateTime ("pNow", DateTime.Now); </p>

Таким образом, в основном я хочу удалить все объекты MyObject из базы данных, в которой последний раз объект был изменен (mo.AlteredDate - DateTime) плюс время, например, 2 дня и 5 часов (ExpiryDetails.ExpiryTimestamp), меньше чем Теперь.

Или лучше всего извлечь объекты и выполнить калькуляцию в коде с использованием .NET Framework?

1 Ответ

2 голосов
/ 23 января 2015

Очень поздно, чтобы ответить, но я сделал что-то вроде этого, и это работает:

IQuery query = Session.CreateQuery("select x from OBJECT x where x.DateTimeForCompare > :dateTimeForCompare2");

query.SetDateTime("dateTimeForCompare2", DateTime.Today);

IList<OBJECT> xx = query.List<OBJECT>();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...