Как можно сделать подкачку страниц с NHibernate?

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

Ваши профили параметра для нового и удаляют потребность быть похожими на это:

void* operator new(size_t);
void operator delete(void*, size_t);
106
задан Ray Vega 10 September 2008 в 17:16
поделиться

1 ответ

Вы также можете воспользоваться функцией Futures в NHibernate для выполнения запроса, чтобы получить общее количество записей, а также фактические результаты в одном запросе.

Пример

 // Get the total row count in the database.
var rowCount = this.Session.CreateCriteria(typeof(EventLogEntry))
    .Add(Expression.Between("Timestamp", startDate, endDate))
    .SetProjection(Projections.RowCount()).FutureValue<Int32>();

// Get the actual log entries, respecting the paging.
var results = this.Session.CreateCriteria(typeof(EventLogEntry))
    .Add(Expression.Between("Timestamp", startDate, endDate))
    .SetFirstResult(pageIndex * pageSize)
    .SetMaxResults(pageSize)
    .Future<EventLogEntry>();

Чтобы Чтобы получить общее количество записей, выполните следующие действия:

int iRowCount = rowCount.Value;

Хорошее обсуждение того, что вам дают Futures, можно найти здесь .

87
ответ дан 24 November 2019 в 03:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: