У меня есть этот запрос,Как оптимизировать этот запрос NHibernate (835ms)
var temp = from x in ActiveRecordLinq.AsQueryable<Circuits>()
where x.User_Created == false
orderby x.Description
select x;
Из NHibernate Profiler
длительность запроса
-Database только: 7мс
-Total: 835ms
Запрос СГЕНЕРИРОВАННЫМИ :
SELECT this_.Circuit_ID as Circuit1_35_0_,
this_.[Description] as column2_35_0_,
this_.[User_Created] as column3_35_0_
FROM dbo.Circuit this_
WHERE this_.[User_Created] = 0 /* @p0 */
ORDER BY this_.[Description] asc
Похоже, что это довольно простой запрос. Он возвращает 6821 строк. Все, что я использую для этого, это заполнить выпадающий список.
Заранее спасибо
Там нет ничего, что вы можете оптимизировать там. Извлечение почти 7 тыс. Строк и их отображение в раскрывающемся списке - это просто плохая конструкция. –
Единственное, что вы можете оптимизировать, это количество элементов в этом выпадающем списке :). Можете ли вы сделать что-то вроде автозаполнения? – sirrocco
@Diego, я просто обновляю текущий дизайн (переключение с sql). Пользователь должен иметь возможность выбирать схему, и только сейчас их 7k. Как бы вы это сделали? – Gage