Tengo esta consulta que devuelve 7 filas y tarda 4ms en la base de datos pero 1075ms para crear instancias. Ese es solo un ejemplo de los tiempos y varía según los objetos, pero no parece tener sentido que lleve tanto tiempo. ¿Alguna sugerencia sobre cómo aumentar la velocidad?Lista <int> tarda mucho tiempo en crear instancias con Nhibernate Criteria
var criteria =
GetSession().CreateSQLQuery(
@"
select circt_id as CircuitId from normal_upstream
where dni_equip_type = 'A'
start with up_equip_stn_no in (:UpStationNo1)
connect by prior equip_stn_no = up_equip_stn_no
union
select circt_id as CircuitId
from normal_upstream
where up_equip_stn_no in (:UpStationNo1)")
.AddScalar("CircuitId", NHibernateUtil.Int32).SetParameterList("UpStationNo1",upstreamStations)
.List<int>()
SQL consulta generada
select
circt_id as CircuitId
from normal_upstream
where dni_equip_type = 'A'
start with up_equip_stn_no in (
'B' /* :p0 */)
connect by prior equip_stn_no = up_equip_stn_no
union
select
circt_id as CircuitId
from normal_upstream
where up_equip_stn_no in (
'B' /* :p1 */)
Cualquier ayuda es apreciada. Gracias
¿Considera este tiempo cada vez que se ejecute o sólo la primera vez? ¿Qué generador de código de bytes estás usando? – jonnii
@jonnii, lleva mucho tiempo todo el tiempo. También el código de bytes es NHibernate.ByteCode.Castle. – Gage
@Gage ¿Qué sucede si lo cambia para devolver un IEnumerable en lugar de IEnumerable y usa List()? –
jonnii