Cómo ejecutar la consulta Nhibernate ICriteria con setFetchMode (perezoso) cuando lazy = falsa definido en HBM?

StackOverflow https://stackoverflow.com/questions/3822684

Pregunta

Me gustaría ejecutar una consulta con criterios vagos asociaciones muchos-a-uno. Esas asociaciones se establecen como lazy="false" en el HBM. Es porque la usamos con impaciencia el 90% del proyecto.

Sin embargo, hay algunos 'grandes' preguntas que deben ejecutarse como lazy="proxy".

HBM:

<many-to-one name="DestinationElement" class="X" column="DstElemId" not-null="true" unique="false" cascade="save-update" outer-join="auto" fetch="select" lazy="false" index="IDX_Ass_DestElem">

configuración Criterios:

criteria.SetFetchMode("DestinationElement", FetchMode.Lazy);

Se trabaja de manera opuesta, pero no de esta manera. Se obtiene con impaciencia.

El LOC es 20K +, y que sería una refactor masiva para hacerlo de la manera opuesta.

¿Cómo puedo forzar a buscar esta pereza sólo cuando quiero, a buscar ansiosamente el resto del tiempo?

Gracias de antemano!

¿Fue útil?

Solución

lazy="false" en el HBM no puede ser anulado en una consulta (además de ser una mala idea el 99% de las veces)

Vas a tener que cambiar su código.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top